ESIL/Dépt Informatique A2 Le 27 Janvier 2005
Examen d’Architectures Avancées
Durée 3 Heures – Documents autorisés.
Un barème indique les points attribués à chaque question.
Soyez concis et précis dans vos réponses.
1/ 3
Dans certains les exercices on utilise le jeu d'instructions du DLX vu en cours. On rappelle que le DLX est une machine load/store et
dispose de 32 registres généraux de taille 32 bits (General Puporse Registers ou GPRs) nommés R0, R1, ..., R31 (R0 a toujours la
valeur 0). Il dispose aussi de 32 registres flottants de taille 32 bits (Floating Point registers ou FP registers) nommés F0, F1, ..., F31.
Les registres flottants sont utilisés par paires pour les opérations sur les flottants double précision (on a donc 16 registres double
précision nommés F0, F2, ..., F30).
On utilisera la notation en langage d'assemblage op dest,source1,.... Par exemple, add R1,R2,R3! additionne R2 et R3, et
range le résultat dans R1, lw R1,0(R2) charge dans R1 la donnée à l'adresse 0+R2, et SW 20(R2),R1 range R1 à l'adresse
20+R2. Le symbole # indique que le reste de la ligne est un commentaire.
Exercice 1 (!IV points)
Une entreprise utilise ses ordinateurs pour des applications qui requièrent beaucoup de calculs de traitement d'images. Les
performances des ordinateurs actuels sont de 6,5 images par seconde, ce qui n'est pas satisfaisant, notamment pour
l'application de visioconférence. Un consultant appelé pour «se pencher sur le problème» propose 2 solutions :
- la première est de remplacer tous les ordinateurs actuels, au coût de 8000 € pièce, par de nouveaux ordinateurs dont les
performances sont multipliées par 3 à tous les niveaux ;
- la seconde est de ne remplacer que la carte graphique en utilisant une carte spécialisée pour le traitement d'images au coût
de 3000 € pièce, et qui traite les images 10 fois plus vite que la carte graphique actuelle.
Les applications visées passent 80% de leur temps à traiter les images.
Question 1 (2 pts)
Comparer les deux solutions en termes de performances et de coût.
Question 2 (1 pt)
Les ordinateurs actuels ont une fréquence d'horloge de 2 GHZ alors que les nouveaux sont cadencés à 3 GHZ et exécutent les
instructions en 1/3 du temps. Le jeu d'instructions n'a pas changé. Le CPI sur les nouveaux ordinateurs est 0,73 cycles par
instruction. Quel est le CPI sur les ordinateurs actuels?
Question 3 (1 pts)
Comment expliquez-vous un CPI fractionnaire et inférieur à 1 (0,73) pour les nouveaux ordinateurs!? Donnez un exemple
d'architecture avec ses différents paramètres (profondeur du pipeline, nombre d'étages, fréquence de blocage du pipeline, …)
qui pourraient conduire à un CPI de 0,73.
Exercice 2 (IV points)
On considère une implantation du DLX avec un pipeline linéaire à 5 étages (IF, ID, EX, MEM, WB). Les divers étages ont la
même fonction que le pipeline simple que nous avons étudié en cours, sauf que ici le calcul de l'adresse de branchement ainsi
que l'évaluation de la condition de branchement sont réalisés par l'étage EX. On voudrait analyser l'effet de l'ajout d'un
mécanisme de prédiction de branchement.
On muni le DLX d'un buffer des adresses de branchement appelé BTB (Branch Target Buffer) dans la suite. Le BTB est
accédé lorsque l'instruction de branchement est en train d'être décodée, et l'adresse de branchement est donc disponible à l'issue
de l'étage ID. On considère un programme P pour lequel :
- 50% des branchements conditionnels conduisent à un succès lors de l'accès au BTB!;
- 80% des branchements conditionnels qui accèdent avec succès au BTB sont pris ;
- 20% des branchements qui conduisent à un échec lors de l'accès au BTB sont pris.
Question 4 (2 pts)
Calculer la pénalité des instructions de branchements sur le CPI pour le programme P.
Question 5 (1 pts)
Que devient cette pénalité si le BTB contient les instructions cibles au lieu des adresses de branchements?
Question 6 (1 pts)
Reprendre les questions 4 et 5 en supposant cette fois-ci que le BTB est accédé à l’étage IF .
Exercice 3 (!VIII points)
On considère P3, une implantation super scalaire 2 voies du DLX. P3 a les caractéristiques suivantes!: