• Aucun résultat trouvé

3.3 AAA pour les ir uits programmables : SynDEx

3.3.5 Optimisation

La méthodologie AAA vise à réduire la laten e d'exé ution de l'algorithme. Pour pouvoir estimer la laten e, il faut al uler les dates de début et de n asso iées aux

graphes d'algorithme et d'implantation. Ces dates seront utilisées pour le al ul de la fon tion oût de l'heuristique d'optimisation.

Cal ul des dates de début et de n d'exé ution des opérations

Comme vu en 3.3.1, haque opération est ara térisée par sa durée d'exé ution sur haqueopérateur apabledel'exé uter. Avantdistribution,onne onnaitpas l'opérateur qui va exé uterl'opération

Oi

du graphe d'algorithme.Don onne peut pas onnaitre sa duréed'exé ution.Cetteduréeestapproximéeparlamoyenne

∆app

desduréesd'exé ution de l'opération

Oi

sur tous lesopérateurs pouvantl'exé uter :

∆app(Oi) =

1

n

n

X

j=1

δ(Oi, Pj)

(3.1)

oùn est le nombre d'opérateurs apables d'exé uter l'opération

Oi

Ladate de débutau plus ttdepuis ledébut

S(Oi)

est déniepar :

S(Oi) =

(

0

si

Γ

−1(O

i) = ∅

max∀Oj∈Γ−1(Oi)E(Oj)

sinon

(3.2) Ave

Γ

1

(Oi)

l'ensemble des prédé esseurs de

Oi

.

Ondénitaussiladatedenauplusttdéniedepuisledébut

E(Oi)

parlasommede ladate de début auplus tt depuisle début

S(Oi)

et dela duréed'exé ution approximée

∆app(Oi)

:

E(Oi) = S(Oi) + ∆app(Oi)

(3.3)

On dénit aussi les dates au plus tard depuis la n. Ce i sera utile pour ne pas être amené à manipuler des dates négatives. La date de n au plus tard depuis la n

E(O¯

i)

d'une opération

Oi

orrespond à la plus grande date de début au plus tard depuis la n

¯

S

de ses su esseurs si

Oi

possède des su esseurs, si non, ette date est nulle.

¯

E(Oi) =

(

0

si

Γ(Oi) = ∅

max∀Oj∈Γ(Oi)S(O¯

j)

sinon

(3.4) Ave

Γ(Oi)

est l'ensembledes su esseurs de

Oi

.

La date de début au plus tard depuis la n

S(O¯

i)

d'une opération

Oi

est la somme de la date de n au plus tard depuis la n de

Oi

et de sa durée approximée d'exé ution

∆app(Oi)

.

¯

S(Oi) = ¯E(Oi) + ∆app(Oi)

(3.5)

Lesdatesquenousvenonsdeprésenternetiennent omptequedugraphed'algorithme. Ellessontpourlemomentindépendantesdel'implantation.Lorsdel'implantation, haque opération du graphed'algorithme est asso iée à un opérateur qui va l'exé uter. Don on ne parle plus de durée d'exé ution approximée mais de durée d'exé ution de l'opération

Oi

sur l'opérateur

P

notée

δ(Oi, P )

. Soit la relation

Π

qui asso ieà haque opération

Oi

du graphe d'algorithme l'opérateur

P

sur lequel elle est distribuée

Π(Oi) = P

. La date de début au plus tt dénie depuis le début

S(Oi)

tient ompte désormais de la date de n de la dernière opérationexé utée sur l'opérateur

Π(Oi)

.

S(Oi) =

(

0

si

Γ

−1(O

i) = Γ

′−1(O

i) = ∅

max(max∀Oj∈Γ−1(Oi)E(Oj), E(Γ

′−1(O

i)))

sinon

(3.6)

Ave

Γ

′−1(O

i)

la relation qui asso ie à haque opération

Oi

l'ensemble de ses prédé- esseurs distribués sur le même opérateur.

Ladate de n auplus tt déniedepuis le débutdevient :

E(Oi) = S(Oi) + δ(Oi, Π(Oi))

(3.7)

Dela mêmefaçon, ladate de n auplut tardet de débutauplus tard déniesdepuis la n deviennent :

¯

E(Oi) =

(

0

si

Γ(Oi) = ∅

et

Γ

(Oi) = ∅

max(max∀Oj∈Γ(Oi)S(O¯

j), ¯S(Γ

(Oi)))

sinon

(3.8)

¯

S(Oi) = ¯E(Oi) + δ(Oi, Π(Oi))

(3.9)

Ave

Γ

(Oi)

larelationquiasso ieà haque opération

Oi

l'ensemblede sessu esseurs distribués sur lemême opérateur.

heuristique d'optimisation

Pourunalgorithmed'appli ationdetraitementdesignalréeletunear hite turemulti- omposantsdonnés, il existe un nombre très élevé de solutions possibles. Lepar ours de toutes es solutions possibles pour en extraire la solution optimale né essite un temps tellementgrandqu'ilestirréalisted'envisagerdetrouver ettesolution.Fa eà eproblème NPdi ile,lesméthodologiesdeprototypagerapideutilisentdesheuristiquespourréduire l'ensemblede solutionsà explorer.

LaméthodologieAAAutiliseuneheuristiquegloutonnebaséesuruneméthodedeliste pouraboutiràuneimplémentationoptimiséed'unalgorithmesurunear hite turedonnée. L'intérêt de e hoix a été défendu dans [Vi ard and Sorel, 1998℄. Cette heuristique vise à minimiserla longueur du hemin ritique (gure3.10) quiest le heminleplus long du graphe d'algorithme.

La fon tion oût

σ

de l'heuristique AAA, appelée pression d'ordonnan ement, tient ompte de l'éventuel allongement du hemin ritique à la suite de l'ordonnan ement de l'opération

Oi

et de la exibilité d'ordonnan ement de ette opération

Oi

. La exibilité d'ordonnan ement

F (Oi)

(gure3.11)est ladiéren eentre laplus grandedate de début de l'opération

Oi

n'engendrant pas de rallongement du hemin ritique et sa plus petite date de début possible. Cette pression d'ordonnan ement est donnée par la diéren e entre la pénalité d'ordonnan ement

P (Oi, P )

et laexibilitéd'ordonnan ement

F (Oi, P )

(

σ(Oi, P ) = P (Oi, P ) − F (Oi, P )

).

Figure 3.11  Représentation de laexibilité d'une opération

L'heuristiqueAAAestprésentéedansl'algorithme1.Elle ommen eparl'initialisation de la liste L en y mettant les opérations qui n'ont pas de prédé esseurs. Ensuite, tant qu'il reste en ore des opérations à ordonnan er dans la liste, elle her he tour à tour pour ha une d'elles l'opérateur permettant d'obtenir la plus petite date de n au plus tt. Puis, parmi la liste d'opérations, elle her he elle qui maximise la fon tion oût

σ

pour l'ordonnan er sur l'opérateur qui lui a été asso ié dans l'étape pré édente. Lors de l'ordonnan ementdes opérationsde al uls,les ommuni ationsné essairessontprisesen ompte.Don dessommetsallo ationssontajoutésautomatiquementsur haquemémoire ou bus utilisépour établir es ommuni ations. Enn,la listeest mise àjour en enlevant l'opération qui vient d'être ordonnan ée et en y ajoutant ses su ésseurs qui deviennent ordonnançables (dont tous lesprédé esseurs sont ordonnan és).

Algorithm 1 HeuristiqueAAA pour les omposantsprogrammables Require: Graphed'algorithme

GAL

et graphed'ar hite ture

GAR

Ensure: Graphed'implémentationoptimisé

1:

L = {Oi

∈ GAL/Γ

−1(O

i) = ∅}

2: while

L 6= ∅

do 3: for all

Oi

∈ L

do

4: Cher her l'opérateur

P (Oi) ∈ GAR

permettant d'obtenir la plus petite date de n auplus tt

5: endfor

6: Choisir

Oi

∈ L

qui maximise la fon tion oût

σ

et l'ordonnan er sur l'opérateur

P (Oi)

trouvé en 4 7: Mettre àjour laliste L 8: end while

Documents relatifs