Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI...

35
Aspects Aspects quantitatifs de quantitatifs de la conception la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI

Transcript of Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI...

Page 1: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs Aspects quantitatifs de la conceptionde la conception

Professeur: Nilo Stolte

Chargé de Cours: Mohammed ELKANOUNI

Département de génie logiciel et des TI

Page 2: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

SommaireSommaire

Introduction

Métriques de performance

Modèle de performance

Analyse d’extensibilité

Page 3: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

IntroductionIntroduction

Intérêt de l’étude de performance:

- Comparer les différents algorithmes

- Savoir où optimiser

- Évaluer la dimensionabilité

- Évaluer l’effet des topologies des réseaux de communication

- Estimer le coût de la mise en œuvre

Page 4: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Métriques de performanceMétriques de performance

Temps d’exécution

Besoin en mémoire

Facilité de transfert entre les tâches et processeurs

Facilité d’entretien

Facilité d’entrée-sortie

Coût de la mise en œuvre

Page 5: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Métriques de performanceMétriques de performance

Le choix des métriques dépend de l’application

Durant ce cours on va traiter le temps d’exécution, l’efficacité et l’accélération

Page 6: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Accélération (speed-up)Accélération (speed-up)

Temps d’exécution:- tp: temps d’exécution sur p processeurs

- t1: temps d’exécution séquentielle

Accélération (speed-up)- S = t1 / tp

Étude de l’accélération- S p

- Code séquentiel : S = 1

- Code « purement » parallèle : S = p

Page 7: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

ptP

t

P

SE

1

EfficacitéEfficacité

Rapport des temps d’exécution séquentiel et le temps d’exécution moyen parallèle par le nombre de processeurs

Traduit le comportement de S en fonction de P

Page 8: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

La loi d’AmdahlLa loi d’Amdahl

G.M. Amdahl (1967):

- identifier la partie parallélisable du code

- charge de travail fixe W (par exemple en Mflop)

- distribution de cette charge sur P processeurs

- décomposition de la charge:

W = W + (1- ) W (partie séquentielle, partie parallélisable)

Accélération:- S = W / ( W + (1-) W/p) = p / (1+(p-1) ) 1/

Page 9: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

La loi d’AmdahlLa loi d’Amdahl

pourcentage de code séquentiel

Illustration:

P P 50%50% 10%10% 1%1%

1010 1.821.82 5.265.26 9.179.17

100100 1.981.98 9.179.17 50.2550.25

10001000 1.991.99 9.919.91 90.9990.99

1000010000 1.991.99 9.919.91 99.0299.02

Page 10: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

La loi d’AmdahlLa loi d’Amdahl

Accélération limitée par la partie séquentielle

Limite indépendante du nombre de processeurs

Les facteurs qui empêchent S de dépasser 1/- Tâches en attente des résultats des autres

- Temps de communication

P P

50%50% 10%10% 1%1%

∞∞ 22 1010 100100

Page 11: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple d’accélérationExemple d’accélération

Algorithme: S = 10.8 sur 12 processeurs (N=100)

Exécution séquentielle:

- Tseq = N + N2 ? (N: taille du problème)

Exécution parallèle: (p: nombre du processeur)

- (1) Tpara = N + N2 / p

- (2) Tpara = ( N + N2 ) / p + 100

- (3) Tpara = ( N + N2 ) / p + 0.6p2

O(N2) algorithmeO(N) chaque p

Page 12: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple d’accélérationExemple d’accélération

S = 10.8 pour P = 12 et N = 100

D’après IAN FOSTER «DBPP»

Page 13: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple d’accélérationExemple d’accélération

S = 10.8 pour P = 12 et N = 1000

D’après IAN FOSTER «DBPP»

Page 14: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Modèle de performanceModèle de performance

Temps d’exécution:

- T = f (N, P, U, …)

- N: dimension du problème

- P: nombre de processus

- U: nombre des tâches

T = (Tjcomp + Tj

comm + Tjidle)

Page 15: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Modèle de performanceModèle de performance

)(1

1

jidle

jcomm

P

j

jcompmoy TTT

PT

D’après IAN FOSTER «DBPP»

Page 16: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps de calculTemps de calcul

Temps de calcul dépend de:

- Complexité et dimension du problème

- Nombre de tâches dans les processus

- Grosseur des tâches

- Type de processeur (vitesse, nombre de bits ….)

- Type d’architecture

- Système d’exploitation

- ……………… ……………… ……………… ………………

Page 17: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps de communicationTemps de communication

Dépend de:

- L’architecture parallèle

- Taille des données

Tmsg = ts + twL

- ts: temps de préparation

- tw: temps de transfert d’un mot

- L: nombre de mots dans le message

Page 18: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps de communication Temps de communication

OdinateurOdinateur t tss((µµs)s) ttw w

((µµs)s)

IBM SP2IBM SP2 4040 0.110.11

Intel ParagonIntel Paragon 121121 0.070.07

Meiko CS-2Meiko CS-2 8787 0.080.08

Sparc/EthernetSparc/Ethernet 15001500 5.05.0

Sparc/FDDISparc/FDDI 11501150 1.11.1

Page 19: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps de communication Temps de communication

D’après IAN FOSTER «DBPP»

Page 20: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps d’attenteTemps d’attente

Difficile à évaluer

Dépend de:

- Ordre d’exécution des opérations

- Complexité et dimension N du problème

- Nombre de tâches dans les processeurs

- Grosseur des tâches

- Type de processeur

Page 21: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Temps d’attenteTemps d’attente

Peut être amélioré par:

- Balançant les charges des processeurs

- créer plusieurs tâches dans un processeur

- profiter du temps d’attente des processeurs

D’après IAN FOSTER «DBPP»

Page 22: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple: différence finie de 9 ptsExemple: différence finie de 9 pts

Chaque processeur communique avec ses 2 voisins

Temps de calcul:

- Tcomp = tc N2 Z

(tc: temps de calcul de chaque cellule)

Temps de communication:

- Tcomm = 2 P (ts + 2 tw N Z)

Temps d’attente = 0

N N

Z

Page 23: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple: différence finie de 9 ptsExemple: différence finie de 9 pts

Temps d’exécution moyen:

- Tmoy = (Tcomp + Tcomm) / P = N2 Z tc / P + 2ts + 4 tw NZ

Accéleration (Speed-up):

- S = Tseq / Tmoy= tc N2 Z / ( N2 Z tc / P + 2ts + 4 tw NZ )

Efficacité:

- E = S / P = T1 / (Tcomp + Tiddle + Tcomm)

Page 24: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Analyse d’extensibilitéAnalyse d’extensibilité

Extensibilité: facilité de s’adapter avec la dimension du problème et le nombre de processeurs

Exemple précédent:

- E = tc N2 Z / ( N2 Z tc + 2tsP + 4 tw NZP )

- Tmoy = N2 Z tc / P + 2ts + 4 tw NZ

- E diminue avec P, ts et tw

- E augmente avec N, Z et tc

- Tmoy diminue avec P mais limité par 2ts + 4 tw NZ

- Tmoy augmente avec N, Z, tc, ts et tw

Page 25: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Questions concernant Questions concernant l’extensibilitél’extensibilité

L’algorithme répond-t-il aux exigences (temps d’exécution, mémoire requise, ...)?

Peut-il s’adapter avec la dimension du problème ?

Peut-il s’adapter avec le nombre de processeurs P ?

D’autres algorithmes peuvent faire mieux le travail ?

Combien ça coûte ?

Page 26: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Extensibilité avec dimension fixeExtensibilité avec dimension fixe

N et Z sont fixe, P est variable

TMoy et E diminue avec P

tc = 1 µsec, ts = 100 µsec, tw = 0.4 µsec, Z = 10

D’après IAN FOSTER «DBPP»

Page 27: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Profil du temps d’exécutionProfil du temps d’exécution

Tracer et observer différents temps en fonction du nombre de processeurs

Reconsidérer certaines conceptions au besoin

Si Tcomm est trop grand:

- dupliquer certains calculs au lieu de communiquer.

- refaire la répartition pour diminuer la communication

- augmenter la granularité pour diminuer la communication

si Tcomp est trop grand:

- changer l’algorithme

- augmenter P

Page 28: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Profil du temps d’exécutionProfil du temps d’exécution

Différence finie 1DDifférence finie 1D N=512, Z= 1, N=512, Z= 1, ttc c == 1 µsec1 µsec, , tts = s = 100 µsec, t100 µsec, tw w = 0.8 µsec= 0.8 µsec

D’après IAN FOSTER «DBPP»

Page 29: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Évaluation pratiqueÉvaluation pratique

La performance théorique ne reflète pas la réalité

L’analyse théorique sert comme guide dans la conception

Nécessité de mesures expérimentales pour évaluer la performance réelle

Page 30: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Mesures pratiquesMesures pratiques

Ajouter les appels dans le code pour la lecture de l’horloge.

Certains outils de “profiling” peuvent aider à mesurer les paramètres de temps

Répéter les expériences pour avoir une bonne moyenne

Faire de grandes boucles du même calcul pour avoir une meilleure estimation de Tcomp

Transmettre de longs messages pour avoir une meilleure estimation de tw

Page 31: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Mesures pratiquesMesures pratiques

Difficultés inévitables

- horloge non précise (pas assez de chiffres significatifs)

- interférences des autres usagers (système multi-usager)

- achalandage dans la communication (ex: réseau Ethernet)

- algorithme non déterministe: l’exécution dépend des conditions

Page 32: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Lissage des paramètresLissage des paramètres

Exemple: on veut déterminer les paramètres ts et tw dans:

- Tmsg = ts + tw L

Effectuer plusieurs mesures avec différents L

Faire le lissage pour obtenir les paramètres

Page 33: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Autres paramètres des Autres paramètres des performanceperformance

Effet de l’architecture

- Cross-bar

- Bus

- Structure maillé

Entrée/Sortie:

- Disque

- Numérique-analogique (applications temps réels)

- Écran

Page 34: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

ConclusionConclusion

Définition et formulation de la performance en terme de:

- temps d’exécution Texec

- efficacité E

Valider les formules de performance avec les mesures expérimentales:

- mesures

- lissage

Page 35: Aspects quantitatifs de la conception Professeur: Nilo Stolte Chargé de Cours: Mohammed ELKANOUNI Département de génie logiciel et des TI.

Aspects quantitatifs de la conception

Exemple de calculExemple de calcul

On désire comparer les deux types d’agglomération de la simulation de l’équation de la chaleur dans une plaque métallique :

- agglomération en réduisant la dimension

- agglomération en augmentant la granularité

Pour simplifier en suppose que le nombre de subdivision en ligne égale le nombre de subdivision en colonne et que le nombre de processeurs p est un carré (càd p=q2)

Calculer Tcomp et Tcomm (le temps de calcul et le temps de communication) pour chaque cas si tc est le temps de calcul d’une seule case, ts est le temps de préparation d’un message et tw le temps de transfert d’une seule donnée.

Calculer l’efficacité et l’accélération pour chaque cas si T iddle=0.

D’après vous quelle est la meilleure l’agglomération (tc = 0.5ms, ts = 40µs, tw = 0.11µs), justifier votre réponse.