Par exemple un processeur dont la fréquence d'horloge est de 3 Ghz capable
d'exécuter 2,2 instructions par cycle en moyenne aura exécuté 6,6 milliards
d'instructions en 1 seconde d'unité centrale. (N = T / N*Tc)
(La nanoseconde (ns) soit 10-9 s représente le temps séparant deux impulsions
d'une horloge à 1 Ghz).
Par le passé, les constructeurs affichaient la performance des processeurs en
Millions d'Instructions par Secondes (instructions entières ou flottantes). Vu la
complexité des processeurs actuels et notamment leur capacité d'exécution
simultanée de plusieurs instructions, ces mesures ne sont plus significatives.
L'étude de performance s'établit actuellement par comparaison à partir de
programmes de tests (appelés benchmarks) significatifs des types d'applications que
le processeur exécute. Pour le calcul, les références sont des benchmarks sur des
entiers (SPECint) et sur des flottants (SPECfloat : il s'agit d'opérations arithmétiques
sur des nombres représentés en flottant (voir chapitre 2 paragraphe 2.1).
Le tableau fournissant le SPECint du processeur Itanium (Architecture IA64 de HP et
Intel mise sur le marché en Mai 2001) se lit ainsi :
Le SPECint2000 est de 314 et le SPECint_base2000 est aussi de 314. Ceci signifie
que les performances crêtes obtenues sont identiques aux performances nominales.
Ceci s'explique par la jeunesse du processeur en juin 2001 qui ne disposait pas encore
des outils logiciels pour optimiser le code produit à partir du programme test.
La première colonne donne le nom du programme test. La seconde (Reference Time)
est le temps de référence actuellement obtenu sur une architecture classique. La
troisième (Base runtime) est le temps obtenu en utilisant une version de base du
calculateur sans chercher à améliorer les outils de base, la troisième (Base Ratio) est
le rapport (*100) entre le temps de référence et le temps de base ; ces valeurs sont
aussi produites en essayant d'optimiser l'exécution du test (colonnes Runtime et
Ratio).
La fin de la fiche décrit le matériel, le système d'exploitation et les options de
compilation utilisées pour produire le code qui a engendré ce résultat.
En regardant précisément la fiche du processeur Alpha21264 on remarque que les
deux valeurs sont différentes : Le SPECint2000 est de 533 et le SPECint_base2000
est de 511.
Ceci signifie qu'il est possible d'améliorer le rendement de la machine en utilisant des
options de compilation (et peut-être des options du système d'exploitation).
Remarquez par exemple que le programme 253permblk est deux fois plus rapide
dans la version optimisée que la version nominale). C'est l'expérience acquise sur ce
type de processeur et ce type de système qui permet d'engendrer un code plus
efficace.
Les processeurs qui équipent les unités centrales des calculateurs actuels
tendent à se standardiser alors que quelques années auparavant chaque constructeur
développait une ou plusieurs unités centrales spécifiques. Le processeur Intel
Pentium définit une gamme de processeurs, actuellement commercialisés dans les
Principes de fonctionnement d'un calculateur numérique : Chapitre 1 4