• Aucun résultat trouvé

Nous dénissons dans cette sous-section les métriques qui permettent d'évaluer les performances calculatoires et énergétiques de l'architecture hybride recongurable.

A.3-1 Accélération apportée par l'architecture hybride

Nous discutons le gain en performances calculatoires en re-visitant la fameuse loi d'Am- dhal. En eet, an d'évaluer les performances de l'architecture hybride en regard de celles du processeur seul, nous dénissons la métrique accélération comme l'accéléra- tion du traitement apportée par l'architecture hybride par rapport à l'exécution du calcul par le CPU seul. Pour une tâche τi, c'est le rapport entre la latence de traite-

ment sur le CPU Ti

execCP U et la latence de traitement sur l'architecture hybride.

La gure 2-2 montre les diagrammes temporels pour l'ARD et l'interconnexion dans le cas d'une reconguration dynamique totale et partielle pour un contexte de recon- guration donné.

Figure 2-2  Diagrammes temporels dans le cas d'une reconguration dyna- mique partielle (a) et totale (b) pour un contexte de reconguration donné. Selon le principe de la reconguration dynamique, la phase de chargement du contexte de reconguration, dont la latence est Ti

CHconf, commence avant que le contexte précé-

dent ne termine son exécution. Dans le cas de la reconguration dynamique partielle, il y a un recouvrement entre les phases d'exécution Ti

execARD(du contexte précédent) et

de reconguration Ti

conf ARD. Cependant, ceci n'est pas le cas pour la reconguration

totale. La phase de chargement de données de la tâche τi dont la latence est Tcomi ne

doit commencer que si la phase reconguration est achevée.

La phase de chargement du contexte de reconguration, dont la latence est Ti CHconf,

commence avant que le contexte précédent ne termine son exécution. C'est le principe même de la reconguration dynamique. Pour le premier contexte de reconguration de la tâche, χiTi

CHconf représente une latence perdue.

reconguration aecte plus ou moins la performance de l'architecture hybride. En eet, dans le cas de la reconguration dynamique partielle, les cycles perdus à chaque reconguration de l'ARD ne nuisent pas à la performance puisqu'il y a un recouvrement entre les phases d'exécution (du contexte précédent) et de reconguration. Cependant, ceci n'est pas le cas pour la recongurations totale. La phase de chargement de données de la tâche τi dont la latence est Tcomi ne doit commencer que si la phase reconguration

est achevée.

La latence de traitement totale sur l'architecture hybride Ti

totalHybride est la somme

entre la latence d'exécution de la tâche sur l'ARD Ti

execARD et les latences perdues

dans :

 la reconguration de l'ARD Ti

conf ARD si la recongutation dynamique est totale ;

 le chargement du premier contexte de conguration. Cette latence est égale à χiTi CHconf

(1er contexte);

 le chargement de données. Cette latence est égale à (1 − δi)Ti com;

 le contrôle du processus de chargement des contextes de reconguration et des don- nées. Cette latence est référencée par Ti

controlCP U.

L'expression de la latence de traitement totale sur l'architecture hybride s'écrit alors : TtotalHybridei = TcontrolCP Ui +TexecARDi +θTconf ARDi +χiTCHconfi (1ercontexte)+(1−δi)Tcomi (2-5) θest un paramètre qui exprime le mode de reconguration dynamique : si totale θ = 1, sinon si partielle θ = 0.

Cette latence de traitement totale de l'architecture hybride recongurable dière d'un modèle de couplage CPU/ARD à un autre. Cette diérence réside dans les valeurs de latence des processus de transfert de données et du premier contexte de reconguration depuis ou vers le système mémoire à l'ARD ainsi que dans la latence perdue par le CPU dans le contrôle de ces processus.

L'accélération du calcul apportée par l'architecture hybride recongurable par rapport à l'exécution du calcul par le CPU seul Ai s'exprime par l'équation suivante :

Ai = T i execCP U Ti totalHybride (2-6) Soit T auxcycles_perdus, le pourcentage de cycles perdus (dans le chargement des données,

la conguration de l'ARD et le contrôle de ces deux processus par le CPU) par rapport au nombre de cycles total de traitement sur l'architecture hybride recongurable et est

déni par :

T auxcycles_perdus =

Ti

controlCP U + θTconf ARDi + χiTCHconfi (1er contexte) + (1 − δi)Tcomi

Ti

totalHybride

(2-7) L'accélération apportée par l'architecture hybride peut alors être simpliée à la formule suivante : Ai = T i execCP U Ti execARD

(1 − T auxcycles_perdus) (2-8)

Le rapport Ti execCP U

Ti

execARD dans l'expression de A

i représente le gain en accélération apporté

par l'exécution de l'application sur l'ARD par rapport à l'exécution sur le CPU sans prise en compte des cycles perdus dans le contrôle, la reconguration et le transfert des données et des contextes de reconguration. Nous remarquons que l'accélération a une valeur maximale (de saturation) qui correspond à cette valeur du gain pour un T auxcycles_perdus tendant vers 0.

Ce gain est le même pour tous les types de couplage entre le CPU et l'ARD. Ainsi, T auxcycles_perdus permet de caractériser le couplage le plus adéquat entre le CPU et

l'ARD pour une classe d'applications donnée.

A.3-2 Taux de réduction de la puissance dissipée et effica-

cité énergétique

Puissance dissipée par une architecture hybride

Nous dénissons par l'équation 2-9 la puissance dissipée pour l'exécution d'une tâche τi

dans une architecture hybride recongurable par la somme des puissances Pi

controlCP U

et Pi

ARD dissipées respectivement dans le contrôle par le CPU et le calcul par l'ARD

de la tâche τi et Ptransf erti celle dissipée dans le transfert des données et des contextes

de re-conguration.

Parchitecturei _hybride = PcontrolCP Ui + PARDi + Ptransf erti (2-9) Cette puissance totale dissipée dans le traitement par l'architecture hybride recongu- rable dière d'un modèle de couplage CPU/ARD à un autre. Cette diérence réside dans les valeurs de puissance dissipée par le processus de transfert de données et des contextes de reconguration depuis ou vers le système mémoire à l'ARD, ainsi que dans la puissance perdue par le CPU dans le contrôle de ces processus.

Taux de réduction de la puissance dissipée

du CPU seul par T auxRed_E, le taux de réduction de la puissance dissipée par une

architecture hybride pour l'exécution de la tâche τi par rapport à celle dissipée dans

l'exécution de la tâche par le CPU seul. Il est dénit par la formule suivante : T auxiRed_E = P i CP U − Parchitecturei _hybride Pi CP U (2-10) Pi

CP U est la puissance dissipée lors de l'exécution de la tâche τi par le CPU seul.

Ecacité énergétique d'une architecture hybride

L'équation 2-11 dénit l'ecacité énergétique d'une architecture hybride pour une tâche τi avec une complexité algorithmique Ci exprimée en MOPS et une puissance

dissipée Pi architecture_hybride. EE = C i Pi architecture_hybride  M OP S W  (2-11) La latence totale et la puissance dissipée totale dans le traitement sur une architecture hybride diérent d'un mode couplage CPU/ARD à un autre par les valeurs de latence et de puissance dissipée dans processus de transfert de données et des contextes de reconguration depuis ou vers le système mémoire à l'ARD ainsi que celles de latence et puissance perdue par le CPU dans le contrôle de ces processus.

An de pouvoir quantier la latence et la puissance dissipée dans communication des données et des contextes de reconguration, nous allons dénir des modèles de com- munication généralistes qui peuvent être appliqués à toutes les architectures hybrides présentant une interaction entre le processeur et l'architecture recongurable dynami- quement.

B Modélisation de la communication dans une

architecture hybride

Dans cette section, nous expliquons les diérentes phases de la construction du modèle de communication processeur-ARD. Nous dénissons en premier lieu des lois générales permettant de quantier la latence et la dissipation d'énergie due aux transferts entre les diérents éléments du modèle général. En deuxième lieu, nous spécions les dié- rentes lois de communications pour chaque modèle de couplage CPU/ARD et étudions l'impact des diérents paramètres applicatifs sur les performances de chaque modèle.