Gei 431
Architecture des ordinateurs II Frédéric Mailhot
Systèmes Superscalaires et VLIW
Parallélisme des instructions: quoi d’autre?
Avec le pipeline, nous avons vu une des
techniques de parallélisme des instructions (ILP
ou Instruction Level Parallelism). Que peut-on
faire de plus?
VLIW (Very Large Instruction Word)
Techniques superscalaires
© 2001 Frédéric Mailhot Université de Sherbrooke
Systèmes superscalaires et VLIW
Limites du pipelining, et comment les
dépasser
Pour une machine pipeline, on peut espérer au
mieux l’exécution d’une instruction par coup
d’horloge: il n’y a jamais plus d’une instruction
lue par coup d’horloge.
Rappel: temps CPU = IC * CPI * période de l’horloge
Pour augmenter la performance, on peut donc:
Diminuer le nombre d’instructions (IC)
Diminuer le CPI
Diminuer la période de l’horloge
© 2001 Frédéric Mailhot Université de Sherbrooke
Systèmes superscalaires et VLIW
Limites du pipelining, et comment les
dépasser (2)
Une question fondamentale se pose:
1. Est-il préférable de tenter de simplifier le circuit pour
augmenter la fréquence de l’horloge?
2. Ou bien, doit-on rendre le circuit plus complexe pour tenter
de faire plus durant la même période d’horloge?
L’architecture RISC, avec le pipeline, procède de la
première approche. Les résultats sont probants, mais il
semble qu’on ne puisse réduire la période de l’horloge en
dessous d’un certain seuil.
D’où: il faut aussi considérer la deuxième approche (ce
que l’on fait avec le VLIW et le superscalaire).
© 2001 Frédéric Mailhot Université de Sherbrooke
Systèmes superscalaires et VLIW
Comment augmenter le ILP: en considérant
plus d’une instruction par coup d’horloge
L’idée de base ici est que la fréquence de
l’horloge ne peut être réduite indéfiniment, et
donc que pour une certaine durée d’horloge, on
doit réussir à faire plus de travail utile.
Comment faire? Lorsque nous arrivons à traiter
tout près d’une instruction par coup d’horloge, la
seule chose à faire de plus est de tenter de lire,
décoder et exécuter plus d’une instruction par
coup d’horloge…
© 2001 Frédéric Mailhot Université de Sherbrooke
Systèmes superscalaires et VLIW
Exécution de multiples instructions par
coup d’horloge: difficultés
Lorsqu’on tente d’exécuter plus d’une instruction par coup
d’horloge, cela implique qu’au même moment plusieurs
instructions, qui ont été produites selon une certaine
séquence par le compilateur et apparaissent
séquentiellement en mémoire, doivent être séparées en des
chemins d’exécution parallèles
Deux façons de faire cela:
Décider au moment de la compilation des instructions qui
peuvent s’exécuter en parallèle (approche VLIW, EPIC)
Décider au moment de l’exécution des séquences
d’instructions qui peuvent se faire en parallèle (approche
superscalaire)
1 / 11 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !