cedricbi
Messages postés185Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention21 mars 2011
-
6 nov. 2007 à 12:07
Guilou34
Messages postés142Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention29 janvier 2016
-
6 nov. 2007 à 15:56
Bonjour à tous,
Je cherche à connaître la vitesse (en cycle d'horloge) de chaque instruction pour un processeur donnée (PIII d'Intel :-) ). Savez-vous où je peux trouver ça ?
Autrement, j'ai trouvé quelque chose de bizarre, en utilisant RDTSC je calcule la vitesse d'exécution d'une fonction ; donc j'ai testé 4 MOV AX, BX à la suite j'obtiens un résultat moyen de 7 cycles d'horloge, pour 5 à la suite j'ai 9 cycles, et résultat bizarre pour 6 à la suite j'ai seulement 8 cycles d'horloge en moyenne. Quelqu'un peut-il m'expliquer ce phénomène ?
Guilou34
Messages postés142Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention29 janvier 20161 6 nov. 2007 à 15:56
Sur par exemple : http://home.comcast.net/~fbui/intel.html Le nombre cycles affichés suposent les conditions suivantes :
Les instructions se trouvent dans le cache cpu (prefetch queue)
Aucun accès au bus ne requiert de "wait states"
Le bus est livre d'accès
Il n'y a pas d'execptions ou de trappes durant l'exécution
et enfin les opérandes en mémoire centrale sont allignées
Les différences observées tiennent très vraisemblement au premier point.
Amicalement