Cours 3 - LOG640 - Introduction au traitement parallèle

publicité
Aspects quantitatifs
de la conception
Professeur: Nilo Stolte
Chargé de Cours: Mohammed ELKANOUNI
Département de génie logiciel et des TI
Sommaire

Introduction

Métriques de performance

Modèle de performance

Analyse d’extensibilité
Aspects quantitatifs de la conception
Introduction

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
Aspects quantitatifs de la conception
Mé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
Aspects quantitatifs de la conception
Mé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
Aspects quantitatifs de la conception
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
Aspects quantitatifs de la conception
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
S
t1
E 
P Ptp
Aspects quantitatifs de la conception
La 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/
Aspects quantitatifs de la conception
La loi d’Amdahl


 pourcentage de code séquentiel
Illustration:
P

10
100
1000
10000
50%
1.82
1.98
1.99
1.99
10%
5.26
9.17
9.91
9.91
Aspects quantitatifs de la conception
1%
9.17
50.25
90.99
99.02
La loi d’Amdahl

Accélération limitée par la partie séquentielle

Limite indépendante du nombre de
processeurs

P
 50%
∞
2
10%
1%
10
100
Les facteurs qui empêchent S de dépasser 1/
- Tâches en attente des résultats des autres
- Temps de communication
Aspects quantitatifs de la conception
Exemple d’accélération



Algorithme: S = 10.8 sur 12 processeurs (N=100)
O(N2) algorithme
Exécution séquentielle:
O(N) chaque p
- 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
Aspects quantitatifs de la conception
Exemple d’accélération

S = 10.8 pour P = 12 et N = 100
D’après IAN
FOSTER «DBPP»
Aspects quantitatifs de la conception
Exemple d’accélération

S = 10.8 pour P = 12 et N = 1000
D’après IAN
FOSTER «DBPP»
Aspects quantitatifs de la conception
Modè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 + Tjcomm + Tjidle)
Aspects quantitatifs de la conception
Modèle de performance
D’après IAN
FOSTER «DBPP»
Tmoy
1 P
j
j
j
  (Tcomp
 Tcomm
 Tidle
)
P j 1
Aspects quantitatifs de la conception
Temps 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
- ……………… ……………… ……………… ………………
Aspects quantitatifs de la conception
Temps 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
Aspects quantitatifs de la conception
Temps de communication
Odinateur
ts(µs)
tw (µs)
IBM SP2
40
0.11
Intel Paragon
121
0.07
Meiko CS-2
87
0.08
Sparc/Ethernet
1500
5.0
Sparc/FDDI
1150
1.1
Aspects quantitatifs de la conception
Temps de communication
D’après IAN
FOSTER «DBPP»
Aspects quantitatifs de la conception
Temps 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
Aspects quantitatifs de la conception
Temps 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»
Aspects quantitatifs de la conception
Exemple: 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
Aspects quantitatifs de la conception
Z
N
N
Exemple: 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)
Aspects quantitatifs de la conception
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
Aspects quantitatifs de la conception
Questions concernant
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 ?
Aspects quantitatifs de la conception
Extensibilité 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»
Aspects quantitatifs de la conception
Profil 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
Aspects quantitatifs de la conception
Profil du temps d’exécution
D’après IAN
FOSTER «DBPP»

Différence finie 1D

N=512, Z= 1, tc = 1 µsec, ts = 100 µsec, tw = 0.8 µsec
Aspects quantitatifs de la conception
É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
Aspects quantitatifs de la conception
Mesures 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
Aspects quantitatifs de la conception
Mesures 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
Aspects quantitatifs de la conception
Lissage 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
Aspects quantitatifs de la conception
Autres paramètres des
performance

Effet de l’architecture
- Cross-bar
- Bus
- Structure maillé

Entrée/Sortie:
- Disque
- Numérique-analogique (applications temps réels)
- Écran
Aspects quantitatifs de la conception
Conclusion

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
Aspects quantitatifs de la conception
Exemple 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 Tiddle=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.
Aspects quantitatifs de la conception
Téléchargement