Comment se définit et se mesure la performance globale dune machine ? 27 février 2002 ----------...
-
Upload
achille-lagrange -
Category
Documents
-
view
108 -
download
2
Transcript of Comment se définit et se mesure la performance globale dune machine ? 27 février 2002 ----------...
Comment se définit et se mesure
la performance globaled’une machine ?
Comment se définit et se mesure
la performance globaled’une machine ?
27 février 2002
----------
Jean-Marc DUFRESNE
Maxence JEGOU
Marie-Laure POITOU
IGSI FC – Module : Architecture ordinateurs
SommaireComment se définit et se mesure la performance d’une machine ?
Introduction
Sur quoi portent les mesures de performances ?composants interaction
Comment mesurer ? techniques de mesureoutils de mesure
Conclusion
Introduction
Facteurs d’APPRECIATION d’une machine
Comment se définit et se mesure la performance d’une machine ?
• Fonctions Utilisation
• Coût• Performance
Définition : Comment, en terme d’efficacité, une machine atteint ses objectifs
Introduction ...Comment se définit et se mesure la performance d’une machine ?
Concepteur de systèmes
Gestionnaire d’installations informatiques
Utilisateur
- temps d’accès à la mémoire,
- vitesse du matériel,- organisation des librairies
de programmes et des BD,
- algorithmes d’allocation de la mémoire ......
- débit important de travaux en un temps donné,
- nombre possible d’utilisateurs supportés,
- utilisation équilibrée et rentable des composants du système,
- service satisfaisant à la plupart des utilisateurs ...
- réduction du temps de réponse
… unité commune : le TEMPS
.. une machine atteint ses objectifs ...
Un peu d’histoire ...Comment se définit et se mesure la performance d’une machine ?
1re mesure de performance : « temps pour exécuter une opération individuelle »
Diversification des instructions : « temps d’exécution moyen d’une instruction »
Arrivée des MIPS :(Millions d’Instructions par seconde)
Nombre d’instructions
Nb MIPS = ----------------------------------------- Temps d’exécution * 106
Arrivée des programmes tests : Noyaux et programmes synthétiques (WHETSTONE – 1976)
Arrivée des MIPS relatifs : Machine référence : VAX 11/780 de DEC => 1 MIPS Machine « X » 5 foix + rapide que réf => 5 MIPS
Arrivée des MFLOPS : Nb opérations flottantes ds un programme donné
Nb MFLOPS = ------------------------------------------------------------------ Temps d’exécution * 106
SPEC :(System Performance and Evaluation Cooperative)
Groupe créé fin 1980 pour constituer base solideauxquels les programmes tests peuvent se référer
le TEMPS -> souci dès le début de l’ère informatique :
Sur quoi portent ...
Le temps
Comment se définit et se mesure la performance d’une machine ?
Principal objet de mesure et de définition des performances
1 ms (milliseconde)1 ms (milliseconde) = 10= 10-3-3 = 0,001 s= 0,001 s
1 µs (microseconde)1 µs (microseconde) = 10= 10-6-6 = 0,000 001 s= 0,000 001 s
1 ns (nanoseconde)1 ns (nanoseconde) = 10= 10-9-9 = 0,000 000 001 s= 0,000 000 001 s
1 ps (picoseconde)1 ps (picoseconde) = 10= 10-12-12 = 0,000 000 000 001 s= 0,000 000 000 001 s
Unités de mesure du tempsUnités de mesure du temps
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
Le microprocesseur (CPU)
est composé de deux unités fonctionnelles :
Unités de calculL’unité arithmétique logique (ou ALU)L’unité de calcul flottant (ou FPU)L’unité multimédia (MMX, 3DNow, SSE, SSE2)
Unités de commandeCompteur ordinal, registre instruction, séquenceur, décodeur …
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
Le microprocesseur (CPU)
Les performances d’un microprocesseur se mesurent essentiellement à l’aide de deux critères :
La fréquence d’horloge La largeur des bus
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
La mémoire cache ou antémémoire (SRAM)
Contribue à minimiser le temps de transfert entre la mémoire centrale et le processeur. C’est une mémoire à accès rapide ( 6 à 15 ns).≃
La localisation
La technique de rafraîchissement
Caractéristiques essentielles :
La capacité
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
La carte mère
Elle sert à relier les différents composants électroniques de l’ordinateur, CPU, RAM, systèmes de bus pour l’échange de données et pour le pilotage des composants indispensable.
Les chipsets
Caractéristiques essentielles :
Composant intégré
Le type de support CPU Le bus système (FSB)
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
La mémoire centrale (DRAM)
Elle contient les informations que le CPU traite. C’est une mémoire dynamique volatile, à accès rapide ( 10 à 70 ns)≃ .
Le temps d’accès
Caractéristiques essentielles :
La capacité
Le type
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
La mémoire de masse
Le disque dur est l'organe servant à conserver les données de manière permanente, contrairement à la RAM, qui s'efface à chaque redémarrage.
Le temps d’accès
Caractéristiques essentielles :
La capacité
L’interface L’antémémoire
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
La carte graphique
C’est un circuit électronique capable de créer et d’envoyer à l’écran des signaux que ce dernier peut convertir en image.
Ces signaux sont créés à partir des informations envoyées par le microprocesseur (en passant par la carte mère).
Caractéristiques
La mémoire
Le bus
Le modèle
Sur quoi portent ...Comment se définit et se mesure la performance d’une machine ?
Interaction des composants
Unités périphériques
Schéma synoptique de la structure d'un ordinateur
Unité Centralede traitement
Unité de commande
Unité arithmétiqueet logique
Mémoirecache
Instructions
Données
Mémoire centrale
Unités d'entrée/sortie
Contrôleur depériphériques
Comment mesurer ?
2 Types d’outils de mesure :
MATERIEL : Instrument ou ordinateur spécialisé pour prendre des mesures:- fournit des données précises - assez coûteux en général
ex : ordinateur de diagnostic de réseau., trafic sur le réseau, analyseur de protocole ...
Programmes ajoutés aux systèmes à mesurer.4 types de programmes :- programmes réels unitaires,- noyaux : « boites» de programmes réels utilisés pour évaluer
les performances liées à des caractéristiques précises de la machine,
- programmes de test de performances (jouet) : ils produisent un résultat déjà connu de l’utilisateur (ex: tri rapide, puzzle ....),
- programmes d’évaluation de performance : WORKBENCH
LOGICIEL :
Comment se définit et se mesure la performance d’une machine ?
Comment mesurer ?
Problématique de la mesure :
Définition du problème : La performance d’une machine peut être calculée par : P = nombre d’instructions x nombre de cycles machine x durée d’un cycle
-> Le nombre d’instructions dépend de l’architecture, du compilateur mais aussi de la technologie, de l’implémentation ....
-> La durée d’un cycle dépend de la technologie d’implémentation
Contraintes :-> Tester plusieurs composantes du système -> ceci n’est possible
qu’avec plusieurs programmes-> Avoir des programmes portables facilement sur n’importe quelle
machine
Comment se définit et se mesure la performance d’une machine ?
Concept : les BENCHMARKS Ensemble de programmes d’évaluation des performances des machines
Comment mesurer ?Comment se définit et se mesure la performance d’une machine ?
- développé en Algol en 1976 puis écrit en C et en Pascal- constitué de plusieurs modules, chacun contenant des instructions de différents types- chaque module est exécuté un certain nombre de fois (poids du module)
La somme pondérée des résultats permet de fournir une mesure en Whetstone par seconde.
2 remarques : - Utilisé pour des programmes de traitement numérique
- Ses modules sont de petite taille : les résultats sont dépendants de l’architecture
DHRYSTONE :
- Programme d’évaluation synthétique créé en ADA en 1984- Résultat d’une étude statistique des caractéristiques des programmes source système et de type
non-numérique (Système d’exploitation, compilateurs, éditeurs ...)
-> C’est donc un programme écrit pour tester certaines caractéristiques et non pas une compilation de programmes réels.
Le benchmarck est constitué de 12 procédures incluses dans une boucle d’environ 100 instructions.
On mesure le nombre de boucles exécutées par seconde (Dhrystones/s).
Même remarque sur la taille réduite du programme de test : ne reflète pas la réalité des programmes plus importants.
WHETSTONE :
Comment mesurer ?LINPACK :
- Ce programme travaille sur des tableaux de données de dimension 100 x 100- Résultats en MFLOPS
-> C’est un test couramment utilisé pour le calcul numérique
Comment se définit et se mesure la performance d’une machine ?
- Besoin : Les benchmarcks utilisant des programmes trop petits (inclus tout entier dans la mémoire cache) ne peuvent plus représenter les programmes réels quand il s’agit de tester la mémoire d’un système.
- But de SPEC (Systeme Performanace Evaluation Cooperative) : regroupant au départ Apollo, Sun HP et MIPS, le but est de sélectionner et distribuer des programmes importants pouvant être utilisés comme benchmarcks.
Différentes versions sont présentées :
SPEC Benchmarck:
Comment mesurer ?Comment se définit et se mesure la performance d’une machine ?
- 10 programmes supplémentaires- Notion de SPEC rate pour mesurer la prise en compte de l’aspect multitâche d’un système
SPEC BENCHMARCK : version de 1992 :
SPEC BENCHMARCK : version de 1989 :
- 10 programmes écrits en C et en Fortran- Temps de référence est le temps d’exécution s/ un VAX 11/780- Etablissement d’un ratio : SPEC ratio = Temps écoulé sur VAX / Temps écoulé sur machine cible
-> Le SPEC mark est la moyenne géométrique des 10 SPEC ratios
SPEC BENCHMARCK : version de 1995 :
- Amélioration des mesures en utilisant des programmes plus longs et en accédant plus à la mémoire- La machine de référence est la station SUN 10/40- Cette version définit 2 jeux de programmes, un pour les entiers (CINT95) et un pour les réels (CFP95)
-> Avantage : test du processeur, de la mémoire, du compilateur
-> Inconvénient : pas de tests sur les Entrées/Sorties
Les mesures type SPECint_base95 correspondent à des spécif très strictes sur les options de compilation
Les mesures type SPECint_rate95 correspondent à l’exécution de plusieurs programmes en multitâches.
- Les constructeurs proposent des instruments de mesure.- Indice iCOMP. d’Intel : cet outil de mesure est basé sur 4 banchmarks dont les SPEC
CINT95 et CFP95.
Impact sur les PC :
Comment mesurer ?Comment se définit et se mesure la performance d’une machine ?
Horloge int-92 fp-92 int-95 fp-95 SUN
SS4/5 110Mhz 78 (1.59
int95) 65 (1.99 fp95) 1.59 1.99
SS10/40 40Mhz 50 60 1.13 1.38 SS20 151 150Mhz 169 208 4.02 4.73 Ultra1 140 143Mhz 215 303 4.66 7.90 Ultra1 170 167Mhz 252 351 5.56 9.06
Ultra5 266Mhz 9.1 10.1 Ultra10 300Mhz 12.1 12.9 Ultra10 360Mhz 15.2 19.9 Ultra30 300Mhz 12.1 18.3 Ultra60 300Mhz 13.2 18.4 Ultra60 360Mhz 16.1 23.5
Enterprise3500 4*400Mhz 47.9 DEC
alpha 255 4/233 233Mhz 180 230 3.8 5.09 alpha 255 4/300 300Mhz 215 285 5.23 5.81 alpha 500 5/333 333Mhz 8.87 11.6 alpha 500 5/400 400Mhz 12.3 14.1 alpha 500 5/500 500Mhz 15.0 20.4 alpha 600 5/333 333Mhz 9.23 13.2
PWS 500au 500Mhz 15.7 19.5 PWS 600au 600Mhz 18.4 21.3
Compaq XP1000 500Mhz 26.9 52.2
Exemple de résultats de bench :
ConclusionComment se définit et se mesure la performance d’une machine ?
De tous temps, mesures de performance = préoccupationbesoin d’aller toujours plus vite :
-> produit de 2 matrices n X n demandant n 3 opérations
Chaque nouvelle génération d’ordinateur rend obsolètes les techniques d’évaluation de la génération précédente.
-> Création de nouvelles version de SPEC Benchmark De nombreux composants entrent en ligne de compte pour
l’évaluation des performances d’une machine.
Une performance intéressante ne peut s'obtenir que par un équilibre de l'ensemble des composants et non d'un seul
Mais les outils d’évaluation de la performance ont leurs limitesAttention : Les indicateurs peuvent être trompeurs : - MIPS : jeu d’instructions différent d’une machine à l’autre, (on ne peut mesurer avec la même unité les performances fournies par des machines RISC
et CISC),
- MFLOPS : ex: le temps d’exécution d’une addition est différent de celui d’une division ; pourtant ils sont généralement considérés identiques dans le calcul de la performance.
Sources
Internet : http://www.dmi.usherb.ca/personnel/prof_info/gabriel.girard/cours-ift628/
notesdecours/performance/node1.html http://www.hardware.fr http://www.onversity.com
Comment se définit et se mesure la performance d’une machine ?
Bibliographie : • Paolo Zanella et Yves Ligier : Edition DUNOD
Architectures et technologie des ordinateurs
• Christian Schuller : Le micro ; Architecture matérielle et logicielle
• Ron White : Edition DUNOD Tech Le micro… comment ça marche ?