COMPARAISON DES PERFORMANCES

Transcription

COMPARAISON DES PERFORMANCES
COMPARAISON
DES
PERFORMANCES
Georges KERYVEL
Page 1
INTRODUCTION
PROBLEMATIQUE
Comparaison de "performances de systèmes à
jeux d'instructions incompatibles
Eviter les pièges
Page 2
MIPS
MYTHE DANGEREUX
Mesure directe fréquence d'exécution des
instructions: aucune signification sémantique
claire dès que l'on change de système.
Critère d'évaluation significatif pour utilisateur:
nombre de travaux utiles traités par unité de temps.
MIPS ET L'ARCHITECTURE HW
Tâche donnée sur deux systèmes différents:
Nombre et type d'instructions : rapport 10!!!
§ Différence du jeux d'instructions
§ Code généré par le compilateur
§ Implémentation des OS
Page 3
MIPS
Exemple: machine RISC et CISC
§ instructions sophistiquées:
§ CISC: OK: ex MOVE 256 bytes
§ RISC: programmée boucle 4 instructions (64 fois)
§ Nombre de MIPS apparents si temps CPU identique:
§ CISC : 1/temps
§ RISC: n/temps
AU PLUS GRAND NOMBRE DE MIPS NE
CORRESPOND PAS FORCEMENT LE
PROCESSEUR LE PLUS PUISSANT
Page 4
MIPS
Exemple architecture HW très différentes
Notion de MIPS : aucun sens hors contexte de mesure
Machine SISD : 10 Mips
Machine MIMD: 300 Mips
Rapport apparent 30 en faveur MIMD
Un programme standard exécuté isolément en
monoprogrammation
§ MIMD 5 Mips et 10Mips sur SISD
§ Rapport des puissances 2 en faveur du SISD
N processeurs de puissance 1 ne sont pas toujours
équivalents à un mono de puissance n.
LES MIPS NE PERMETTENT DE COMPARER
SIGNIFICATIVEMENT QUE DES
ARCHITECTURES IDENTIQUES
Page 5
MIPS
Distance entre requêtes utilisateurs soumises au
système(échanges interactifs, jobs batch) et
instructions générées est trop grande pour
extrapoler, sans risque d'erreur, le nombre de
requêtes( puissance utiles) à partir des
instructions générées(puissance MIPS).
Page 6
MIPS
Incertitude maximale si on compare des
systèmes incompatibles
Partant du HW ---> vers utilisateur causes croissantes
de divergence
Boucle CPU simple: faite à la main comportement
dépend du HW (jeu instruction)
Programme Benchmark ( langage C): dépendance
supplémentaire due à l'efficacité du code généré par
compilateur (80% des instructions exécutées) et aux
fonctions mathématiques (20% des instructions
exécutées )
Application interactive dépendante du système
d'exploitation:
§ 90% des instructions exécutées le sont dans des
primitives systèmes invoquées au long du traitement de la
requête. Nombre d'instructions pour traiter un échange est
conditionné par l'architecture et l'implémentation de l'OS.
Page 7
MIPS
L'usage à 100% du CPU n'est pas garanti des goulots
d'étranglement HW ou SW peuvent intervenir et limité
son utilisation
Utilisateur,
100%
Utilisateur,
compilées
80%
Fonctions
système 90%
20% fonctions
math. système
Boucle CPU
compilée à la
main
Page 8
Utilisateur,
compilées
10%

Documents pareils