Projet :
EP-ATR

Précédent : Synthèse de circuits et conception
Remonter : Résultats nouveaux Suivant :
Contrats industriels
(nationaux, européens et
Techniques d'algèbre MaxPlus pour l'évaluation de
performances
Participant : Albert Benveniste.
Mots clés : Signal, évaluation de
performance, algèbre MaxPlus .
Glossaire :gloévaluation de performancetechnique permettant
l'analyse du comportement temporel (au sens du temps réel) d'un
programme sur une architecture. gloautomate temporisémodèle
consistant à affecter des spécifications de comportement temporel
aux actions situées sur les transitions d'un automate. gloalgèbre
MaxPlusalgèbre linéaire construite sur le semi-anneau
{Z, max, + }, elle est adaptée à la
manipulation formelle pour les modèles d'évaluation de
performance.
Résumé :
Ce travail est réalisé avec Claude Jard (projet Pampa) et
Stéphane Gaubert (projet Meta2, Rocquencourt). Grâce au travail
conduit au sein du projet EP-ATR par
A. Kountouris et P. Le Guernic [[12]], nous
disposons d'une technique permettant d'associer, à tout couple
constitué d'un programme Signal et d'une architecture support
(également spécifiée en Signal), un autre programme Signal
modélisant la consommation de temps par ce programme
s'exécutant sur l'architecture considérée. Restait à développer
une technique symbolique permettant le raisonnement sur ce type
de modèle. Nous avons développé une extension des techniques
d'algèbre MaxPlus, promues et étudiées au sein du groupe du
même nom (G. Cohen, J-P. Quadrat, F. Baccelli, S. Gaubert),
permettant de couvrir le cas qui nous intéressait. Dans cette
algèbre, la manipulation symbolique de modèles d'évaluation de
performance de programmes Signal se présente comme un problème
d'algèbre linéaire, avec toutefois des spécificités dues aux
particularités du semi-anneau ``MaxPlus''.
Le point de départ est le modèle de calcul de la figure
3.
Figure 3: Calcul:
n yn =
yn - 1 + un,
modélisé par un automate de graphes. Le premier
diagramme montre une abstraction du calcul
n :
yn = yn - 1 +
un sous la forme d'une chaîne infinie
de graphes de dépendance. Dans le second diagramme, les
petites pastilles représentent des «épingles», qui
permettent de recoller chaque tranche de graphe aux
tranches précédente et suivante, ce qui donne une notion de
concaténation. Cette notion est utilisée dans le troisième
diagramme pour construire le «langage»
a
, où a est
le symbole constitué du graphe figurant sur l'unique
transition de cet automate.
 |
Les programmes Signal permettent en fait de décrire des calculs
qui changent dynamiquement en fonction de l'état logique du
programme. Le modèle prototype est donc celui du troisième
diagramme de la figure 3, mais avec un automate
fini et un alphabet de graphes permettant d'étiqueter les
transitions. Le modèle en question est équivalent à celui des
graphes de dépendance étiquetés par des horloges. La figure
4 en montre un
exemple, avec le graphe infini obtenu par dépliage.
Figure 4: Un automate de graphes.
Le diagramme en haut à gauche montre l'automate. Ses
transitions sont étiquetées par les graphes A,
B, C, et la concaténation se fait comme à
la figure précédente. On vérifie que le dépliage de cet
automate donne bien le graphe infini en bas à gauche -- le
symbole * est l'opérateur «étoile» des
langages réguliers.
 |
Le diagramme de la figure 5 montre la
représentation graphique, dans notre algèbre MaxPlus, du modèle
de la figure 4.
Figure 5: Représentation graphique des
équations de point fixe satisfaites par le modèle MaxPlus
correspondant à l'automate de graphe de la figure 4. Chaque
rond code, à l'aide d'une série formelle dans une algèbre
adaptée (résultat de nos travaux), les dates au plus tôt
d'occurrences successives de X
et
Y
dans les états S1
et S2 de l'automate. La
confluence de flèches vers un rond indique que les dates
sont des ``max'' des dates des ronds origines des flèches
correspondantes, augmentées de
(resp.
) lorsque
l'action A, B ou C est
effectuée. L'utilisation du temps multiforme
,
permet de
différentier le coût d'une même action selon qu'il s'agit
de X
ou de Y
. On code ainsi une
équation de point fixe dont la solution fournit une
représentation des dates d'occurrence. La technique
consiste alors à effectuer tous les raisonnements sur ce
type de diagramme.
 |
Il existe d'autres représentations, plus compactes, sous la forme
d'expressions régulières -- tandis que la figure 5 est une
représentation avec états explicites.
Cette année, nous avons consolidé l'étude algébrique de ces
séries formelles et de leurs représentations graphiques. Dans
[[19]],
S. Gaubert étudie en détail les aspects purement
algébriques. Dans [[21]], nous
présentons une utilisation de ce cadre pour modéliser le
comportement temporel de machines modales hiérarchiques, modèles
hybrides combinant automates et diagrammes flot de données, de
manière hiérarchisée.

Précédent : Synthèse de circuits et conception
Remonter : Résultats nouveaux Suivant :
Contrats industriels
(nationaux, européens et