La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

8INF433 Algorithmes parallèles. Trois nouvelles instructions: 1.spawn 2.sync 3.parallèle.

Présentations similaires


Présentation au sujet: "8INF433 Algorithmes parallèles. Trois nouvelles instructions: 1.spawn 2.sync 3.parallèle."— Transcription de la présentation:

1 8INF433 Algorithmes parallèles

2 Trois nouvelles instructions: 1.spawn 2.sync 3.parallèle

3 Exemple: Fibonacci P-Fib(n) if n<=1 return n else x = spawn P-Fib(n-1) y = P-Fib(n-2) sync return x+y

4 Exemple: Fibonacci

5 Mesures de performance Travail (work): temps séquentiel Durée (span): temps parallèle T P : temps dexécution sur P processeurs T 1 : travail T :durée Loi du travail: T P T 1 /P Loi de la durée: T P T Parallélisme: T 1 /T T 1 /T p (accélération)

6 Analyse de P-Fib T 1 (n) = θ( ϕ n ) où ϕ est le nombre dor T (n) = max(T (n-1), T (n-2)) + θ(1) = T (n-1) + θ(1) = θ(n) Parallélisme: θ( ϕ n /n )

7 Boucles parallèles Exemple: On veut multiplier une matrice M par un vecteur x Mat-Vec(M,x,n) parallèle for i=1 to n do y[i]=0 parallèle for i=1 to n do for j=1 to n do y[i] = y[i] + M[i,j]*x[j] return y

8 Implémentation des boucles parallèles On implémente les boucles parallèles à laide de linstruction spawn: Mat-Vec-Main-Loop(M,x,y,n,d,f) if (d==f) for j=1 to n do y[d] = y[d] + M[d,j]*x[j] else m = (d+f)/2 spawn Mat-Vec-Main-Loop(M,x,y,n,d,m) Mat-Vec-Main-Loop(M,x,y,n,m+1,f) sync

9 Implémentation des boucles parallèles

10 Analyse de Mat-Vec(A,x,n) Travail: θ(n 2 ) Durée: Total: θ(n) Parallélisme: θ(n 2 /n) = θ(n) Θ(lg n) Θ(lg n) + θ(n) Θ(1) Mat-Vec(M,x,n) parallèle for i=1 to n do y[i]=0 parallèle for i=1 to n do for j=1 to n do y[i] = y[i] + M[i,j]*x[j] return y

11 Multiplication matricielle (1) P-Square-Matrix-Multiply(A,B,n) parallèle for i=1 to n do parallèle for j=1 to n do C[i,j]=0 for k=1 to n do C[i,j] = C[i,j] + A[i,k]*B[k,j] return C

12 Multiplication matricielle (2)


Télécharger ppt "8INF433 Algorithmes parallèles. Trois nouvelles instructions: 1.spawn 2.sync 3.parallèle."

Présentations similaires


Annonces Google