Analyse de performance et simulation
Mohsine Eleuldj
Département Génie Informatique, EMI
[email protected]
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 2
Analyse de performance et simulation
Objectif
Introduction au critères de performance des systèmes Développement de simulateurs
Contenu
Conception des ordinateurs et performance Performance d’un système réparti
Fiabilité et tolérance aux pannes Simulation
Evaluation des connaissances
Contrôle (60%) à livre ouvert le 15 janvier 2015 Exposé (40%)
Présentation des exposés
Nom Prénom Sujet date
ADDI Said
Fiabilité et performance des logiciels 25/12/14 AIT BENHA Anass
ALTIT Mustapha
Performance des systèmes d’exploitation 25/12/14
AZIZI Yasser
FARAJI Zineb
Performance des SGBD 25/12/14
HACHAMI Amal
HAMADA Naoufal
Performance des compilateurs 8/1/15 ISMAILI Khalid
KEBBOUA Hamza
Performance des réseaux informatiques 8/1/15 MOUSSAOUI El Mehdi
SAIH Rabia
Performance du Cloud Computing 8/1/15
SALHI Hamza
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 4
Exposé et documents à remettre
Exposé :
20 pages en 20 minutes Simulation :
simulateur du sujet exposé Document sur support papier :
rapport d’une vingtaine de pages incluant le programme Documents sur support électronique :
rapport + présentation
Chapitre I
Conception des ordinateurs et performance
1 Définition de la performance
2 Principes quantitatifs des la conception des ordinateurs 3 Rôle d’un concepteur d’ordinateurs
4 Critères de performance
5 Coût
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 6
Définition de la performance
Performance = 1/T où T est le temps d’exécution Point de vue de l’utilisateur
exécution d’un programme en moins de temps (temps de réponse) Point de vue de l’administrateur
exécution de plus de programmes en une heure (débit de sortie) Quelques techniques d’augmentation du débit de sortie
temps partagé d’une ressource (processeur, DMA,…)
pipeline (Assemblage à la chaîne dans les usines Ford à partir de 1908) hiérarchie de la mémoire (Cache L1, L2, L3, RAM, Disque, …)
etc
….
Temps partagé d’une ressource
Ui : Utilisateur i
A : Allocation en continu B : Allocation à temps partagé t1 : fin de U3 t2 : fin de U2 et U3
B A
U1 U2 U3
U1 U2 U3 U1 U2 U1 U1 U1
temps
t1 t2
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 8
Technique du pipeline
E1 : exécution sans pipeline E2 : exécution avec pipeline Ci : Calcul du processus i E/Si : E/S du processus i
t1 : fin de E1 t2 : fin de E2
E/S C
C1
E/S1 E/S2 E/S3
temps t2
E1
C1 E/S1 C2 E/S2 C3 E/S3
temps t1
E2 C2 C3
Technique de la mémoire virtuelle
La boucle du programme représente 5% des instructions et s’exécute 99,99%
du temps. Elle sera chargée dans la mémoire cache qui est très rapide.
RAM Cache
Processeur 1
Boucle 1 million de fois 1200
2000 1300
Programme chargé en mémoire Mémoire virtuelle
Adresse
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 10
Principes quantitatifs
de la conception des ordinateurs (1/2)
• Faire que les cas les plus fréquents soient les plus rapides (budget limité) Exemple : 95% d’additions et 5% de multiplications
amélioration de l’additionneur
• Loi d’Amdhal : gain obtenu après une amélioration Accélération = Pa/Ps = Ts/Ta
où Pa et Ta : performance et temps avec l’amélioration Ps et Ts : performance et temps sans amélioration
Principes quantitatifs
de la conception des ordinateurs (2/2)
• Localité des références : les programmes ont tendance à réutiliser les références et les données utilisées récemment
• Statistiques : 90% du temps du processeur est dépensé dans 10% des instructions d’un programme
• Types de localités de référence :
• temporelle : éléments accédés récemment
• spatiale : éléments d’adresses proches
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 12
Exercice 1
Exercice 1: Trouver l’accélération sachant que le dispositif d’amélioration est 10 fois plus rapide que la machine originale et ne peut être utilisé que 40% du temps.
Exercice 2 : Soit un système composé d’un processeur et d’une unité d’E/S et ayant un coût C et une performance P. Considérons une amélioration telle que:
• Le processeur est 5 fois plus rapide pour 5 fois son prix
• Le processeur est utilisé 50% du temps
• Les E/S sont utilisées pendant 50% du temps
• Le coût du processeur est le 1/3 de la machine
a) Calculer le coût C’ et la performance P’ après l’amélioration.
b) Déduire le rapport coût/performance après l’amélioration.
c) Est ce que cette amélioration réduit-elle le rapport coût/performance ?
Loi empérique de Moore
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 14
Rôle d’un concepteur d’ordinateurs (1/2)
• Objectifs : Réduction du rapport coût/performance
• Unités et leur organisation
• Jeu d’instructions (langage machine)
• Réalisation (circuit intégrés, boitier, refroidissement,…)
• Système d’exploitation
• compilateur
• Fonctionnalités nécessaires
• Spécification
• Performance
• Coût
• Compatibilité
• Fiabilité
• Tolérance aux pannes
Rôle d’un concepteur d’ordinateurs (2/2)
• Equilibre entre le matériel et le logiciel
• Matériel : performance en augmentation et coût en réduction
• Logiciel : conception aisée et mise à jour plus simple
• Concevoir pour durer
• évolution technologique : matériel et logiciel
• taille des programmes augmente de 1,5 à 2 fois tous les ans
• une conception simple sera finalisée plus rapidement et profitera plus rapidement des progrès technologiques
• Questions (projection dan le futur) :
• Quelle capacité mémoire pour une vitesse du processeur donnée ?
• Combien d’E/S sont nécessaires ?
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 16
Critères de performance
• Analogie avec les voitures : vitesse maximale, freinage, consommation (l/km), accélération (temps de passage de 0 à 100 km/h), prix,…
• Dans un ordinateur, le temps de réponse de réponse est composé de :
• Calcul du processeur
• Accès à la mémoire
• Accès au disque
• E/S (Transfert de ou vers les équipements périphériques)
• Système d’exploitation
• Attente d’une E/S (multiprogrammation)
• Attente d’autres exécutions (temps partagé)
• Etc
• Exemple : sous Unix la commande time retourne trois composantes : utilisateur + système + temps total
Performance du processeur
• Dans un processeur, les événements sont synchronisés horloge
Exemple : fréquence = 2,5 GHz Cycle d’horloge = 1/fréquence = 0,4 ns
• temps processeur = n * cycle = n / fréquence
où n : nombre de cycles d’horloges du programme
CPI = nombre de cycles pour un programme / nombre d’instructions est appelé le nombre moyen de cycles par instruction
temps processeur = nombre d’instructions * CPI * temps du cycle
• MIPS = nombre d’instructions / (temps d’exécution * 106)
MFLOPS = nombre d’opérations en point flottants/(temps d’exécution * 106) GFLOPS (giga=109), TFLOPS (tera=1012) et PFLOPS (peta=1015)
Architectures parallèles, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 18
Classement des superordinateurs (nov. 2014)
Référence : http://www.top500.org/lists/2014/11/
Rang Site Système Cores PFlops
1 National Super Computer Center in Guangzhou, China
Tianhe-2
NUDT 3 120 000 33,86
2 DOE/SC/Oak Ridge National Laboratory, United States
Titan - Cray XK7
Cray Inc. 560 640 17,59
3 DOE/NNSA/LLNL United States
Sequoia
IBM 1 572 864 17,17
4 RIKEN Advanced Institute for Computational Science, Japan
K computer
Fujitsu 705 024 10,51
5 DOE/SC/Argonne National Laboratory, United States
Mira - BlueGene/Q,
IBM 786 432 8,58
Programmes d’évaluation
• Programme réel : compilateur, traitement de texte, CAO,…
• Noyau : partie clef d’un programme réel
• Programme de test de performance (jouet)
10 à 100 lignes de code et produit un résultat connu d’avance par l’utilisateur
• Programme synthétique (benchmark)
noyaux étendus qui correspondent aux fréquences moyennes des opérations et opérandes d’un grand nombre de programmes
Exemples : Whestone, Dhrystone,…
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 20
Fabrication des circuits intégrés
Intel Core i7-3770K
Caractéristiques : fréquence = 3,4 GHz, technologie de fabrication = 22 nm et
Analyse de performance et simulations, M. Eleuldj, Département Génie Informatique, EMI, septembre 2014 22
Coût
• Coût d’un circuit intégré =
(coût de fabrication + coût du test + coût de l’encapsulation) / rendement
• Coût de fabrication =
coût de la tranche/(circuit par tranche * rendement de circuit) En pratique le rendement de circuit 22,5%
• En 1990 le coût de
• Test des circuits 17$
• Encapsulation 0,25$
• Coût et prix : une modification du coût de 1000$ peut implique un changement du prix de 4000$.