calcul CPI

calcul CPI - Carte mère - Hardware

Marsh Posté le 29-11-2004 à 19:28:23    

Bonsoir
 
 
 
voila mon souci, cela doit etre un exercice classique et facile pour certain, mais mois je capte pas trop.
 
 
 
j'ai une machine avec une frequence d'horloge de 10MHz, elle ccomporte 3 classe d'instructions ayant les CPI suivants :
 
classe A CPI 2
 
classe B CPI 3
 
classe C CPI 4
 
 
 
on desire comparer le code produit par deux compilateur, la trace d'un ensemble de programme a êrmis de determiner pour chacun des compilateurs la frequence moynenne d'execution de chacune de classes d'execution :
 
                  frequence moyenne d'execution
 
code issu du      A        B        C
 
compilateur 1     40%      30%      30%
 
compilateur 2     50%      30%      20%
 
 
 
on me demande le CPI du code produit par chacun des compilateurs?, quel compilateur produit le code ayant la mesure MIPS la plus elevée et de combien? et enfin quel compilateur produit le code le plus performant(en terme d'execution) et de combien?
 
 
 
des explications, ou exemples seraient vraiment les biens venus.
 
 
 
merci beaucoup de votre aide.
 
 
 
Patrice
 
 
 
 

Reply

Marsh Posté le 29-11-2004 à 19:28:23   

Reply

Marsh Posté le 30-11-2004 à 06:46:11    

Bonjour
 
Y'a vraiment personne qui peut m'aider, peut etre n'est pas le bon forum?
merci
Patrice

Reply

Marsh Posté le 10-05-2013 à 18:03:46    

Je sais, la date est passé, mais comme souvent les forums répondent à des questions pour les futurs visiteurs... et si je suis tombé dessus en cherchant des réponses sur les CPI, alors peut-être que de futurs personnes tomberont ici et aimerons avoir une réponse.
Donc j'émet une proposition de réponse, car je ne prétend pas avoir la bonne réponse, je révise justement ce truc pour mon futur partiel...
 
Rappel : CPI = Cycle par seconde
 
Pour le compilateur 1, on a 40% de A, 30% de B et 30% de C, soit un CPI[global] = 0.40*2 + 0.30*3 + 0.30*4 = 2.9 CPI
 
Pour le compilateur 2, on a 50% de A, 30% de B et 20% de C, soit un CPI[global] = 0.50*2 + 0.30*3 + 0.20*4 = 2.7 CPI
 
Du coups, le compilateur 2 présente un code qui aura un meilleur CPI sur ce processeur. 2.7 cycles par instruction, comme le processeur fait 10MHz (pas terrible au passage), on a (si je me trompe pas) 10 millions de cycles par secondes.
Soit le nombre d'instructions par secondes est : 10e+6*1/2.7 = 3.7e+6
Soit 3.7 MIPS.
l'autre nous aurait donné : 3.4 MIPS avec 2 chiffres significatifs.
Soit 0.26 MIPS de plus !
 
Compilo 2 est plus performant !
Du moins c'est ce que j'aurais écrit sur ma copie !  
 
@++


Message édité par dakkon_jareth le 10-05-2013 à 18:08:36

---------------
Romain K. - Grenoble INP
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed