Upload
rupert
View
22
Download
2
Embed Size (px)
DESCRIPTION
Université Mohamed 1er Faculté des Sciences Département de Mathématiques et Informatique. Un résultat de convergence des algorithmes parallèles asynchrones Application aux opérateurs maximaux fortement monotones Abdenasser BENAHMED. Plan. Problème - PowerPoint PPT Presentation
Citation preview
1
Un résultat de convergence des algorithmes parallèles asynchrones
Application aux opérateurs maximaux fortement monotones
Abdenasser BENAHMED
Université Mohamed 1er
Faculté des Sciences
Département de Mathématiques et Informatique
2
PlanPlan
Problème
Méthodes directes / itératives pour le calcul numérique
Algorithmes itératifs synchrones
Algorithmes itératifs asynchrones
L’algorithme général
Résultats de convergence
Notre résultat
Application aux opérateurs monotones
Cas spéciaux
Conclusion
3
ProblèmeProblème
La modélisation de beaucoup de phénomènes conduit à la résolution
d’une équation du type
f(x) = 0 , x E (1)
E espace vectoriel
Équation qu’on peut écrire sous la forme
x = F(x) , x E (2)
Les solutions de (2) sont appelés points fixes de F
E = Rn
4
Méthodes directes / itératives pour Méthodes directes / itératives pour le calcul numériquele calcul numérique
Méthodes directes :
calculent la solution exacte en un nombre fini d’étapes
gourmandes en mémoire (dimension n => stockage n3)
Méthodes itératives (séquentielles) : évaluent la solution par approximations successives : xp+1 = F(xp) moins gourmandes en mémoire plus facilement parallélisable
Exemple de 2 processeurs expliquant le déroulement des algorithmes
parallèles synchrones et asynchrones
5
Algorithmes itératifs synchronesAlgorithmes itératifs synchrones Les processeurs commencent la même itération au même moment Les échanges de données sont réalisées à la fin d'une itération Beaucoup de temps morts entre les itérations (périodes d’inactivité) Dégrade considérablement les performances des algorithmes parallèles
xip+1 = Fi (x1
p, x2p) i=1,2
1
1
Processeur 1
Processeur 2
temps
2
2
3
3
4
4
5
5
6
6 x1
x2
phases de calculphases de communication
et d'attente
6
Algorithmes itératifs asynchronesAlgorithmes itératifs asynchrones Les processeurs ne calculent pas forcément la même itération à un instant t
(pas de synchronisation) Ils effectuent leurs itérations sans tenir compte de l'avancement des autres
(pas d'ordre de calcul) Il n'y a plus d'attente des données venant d'autres processeurs pour commencer une
itération Il n'y a plus de temps morts entre les itérations
xip+1 = Fi (x1
s1
(p), x2s2
(p)) i=1,2
1
1
temps
2
2
3
3
4
4
5
5
6 7
6 7 8
8
x1
x2
Processeur 1
Processeur 2
7
L’algorithme général :L’algorithme général :Décomposition de Rn
processeurs chaque processeur communique avec les autres processeurs de façon asynchrone
pour envoyer et recevoir des données
Rn = Rn1 x Rn2 x … x Rn , n1 + n2 + … + n = n
x Rn
x = (x1,…, x) , xi Rni
8
L’algorithme général :L’algorithme général :Produit scalaire et normes
x = (x1,…, x) et y = (y1,…, y)
Chaque Rni est muni
du produit scalaire euclidien (.,.)i
de la norme associée ||..||i = (.,.)i
1/2
L'espace Rn sera muni
du produit scalaire (x,y) = ∑ (xi ,yi)i
i=1
de la norme associée ||x|| = (x, x)1/2
et de la norme uniforme ||x|| = max{ ||xi||i , 1 ≤ i ≤ }
9
L’algorithme général :L’algorithme général :Définition
(3)
F est une application de Rn vers Rn
L’algorithme parallèle asynchrone associé à l’application F est défini par
J(p) est une suite de sous-ensembles non vides de {1,…, }
si(p) sont des entiers inférieurs à p indexant des itérations antérieures à p
10
Cet algorithme décrit le comportement d'un processus itératif exécuté de
façon asynchrone sur une machine parallèle comportant processeurs.
A chaque itération p + 1, le ième processeur calcule xip+1 en utilisant (3)
J(p) est l'ensemble des composantes mises à jour à l'itération p (stratégie
de composantes)
ri(p) = p si(p) représente le retard éventuel dû au ième processeur lors du
calcul du ième bloc à l'itération p
(3)
L’algorithme général :L’algorithme général :Définition
11
Comment s'est développé cet algorithme au cours des années passées?
L’algorithme général :L’algorithme général :Définition
(3)
12
Résultats de convergence:Résultats de convergence: Chazan & Miranker (1969)
Pour résoudre le système linéaire Ax = b où A est une matrice
symétrique définie positive sur Rn
Problème linéaire de point fixe
Mise à jour d’une seule composante
Retards bornés
Application contractive
13
Résultats de convergence:Résultats de convergence: Miellou J.C. (1975)
Généralise le résultat de Chazan & Miranker sur deux niveaux
Problème non linéaire de point fixe
Mise à jour de plusieurs composantes
Retards bornés
Application contractive en norme vectorielle
14
Résultats de convergence:Résultats de convergence: Baudet G. (1978)
Généralise le résultat de Miellou
Problème non linéaire de point fixe
Mise à jour de plusieurs composantes
Retards non bornés
Application contractive en norme vectorielle
15
Résultats de convergence:Résultats de convergence: El Tarazi M.N. (1982)
Plus simple dans la pratique
Problème non linéaire de point fixe
Mise à jour de plusieurs composantes
Retards non bornés
Application contractive en norme scalaire
16
Résultats de convergence:Résultats de convergence:Bahi J.M. (2000)
Systèmes singuliers
Problème linéaire de point fixe
Mise à jour de plusieurs composantes
Retards bornés
Application non-expansive
17
Problème non linéaire de point fixe
Mise à jour de plusieurs composantes
Retards bornés
Application non-expansive
Notre résultatNotre résultat
18
Notre résultatNotre résultat
Théorème 1Théorème 1: (Résultat principal)
Supposons :
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
Alors pour tout x0 Rn, l’algorithme parallèle asynchrone associé à F converge vers x* point fixe de F
19
La preuveLa preuveElle se fait en trois étapes:
i. La suite (|| xp u ||)pN est convergente grâce à (h2), (h3) et (h1)
Donc la suite (xp)pN est bornée
ii. La suite (xpk)kN ((pk)kN est définie par (h0)), étant bornée, elle admet une
sous-suite notée aussi (xpk)kN qui converge vers x* de Rn. Alors x* est un
point fixe de F grâce à (h4), (h2) et (h0) et (i)
iii. xp x* pour la norme ||..|| quand p tend vers grâce à (i) et (ii)
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
20
CommentairesCommentaires(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
L'hypothèse (h0) signifie que de temps à autre (après quelques itérations) les processeurs se synchronisent et mettent à jours leurs données en les échangeant
Cette sous-suite peut être programmée par l'utilisateur
21
CommentairesCommentaires
L'hypothèse (h1) signifie que les retards dus aux communications entre processeurs et aux différents temps de calcul sont bornés, ce qui revient à supposer qu'au bout d'au plus (s+1) itérations, tous les processeurs finissent par mettre à jour leurs données.
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
22
CommentairesCommentaires
L'hypothèse (h2) affirme que F admet un point fixe
L'hypothèse (h3) signifie que F est non-expansive par rapport à la norme uniforme ||..|| sur Rn
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
23
CommentairesCommentaires
L'hypothèse (h4) est vérifiée par une large classe d'opérateurs: la résolvante F = (I + cT )-1 (c > 0) associée à un opérateur T maximal
monotone la projection pc d'un espace de Hilbert réel H sur un convexe fermé non
vide C les opérateurs linéaires symétriques positifs et non-expansifs
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
24
L’algorithme de JacobiL’algorithme de Jacobi
(4)
Caractérisé par : si(p) = p i {1,…, } (tous les retards sont nuls)
J(p) = {1,…, } (toutes les composantes sont réactualisée)
(4) décrit un algorithme parallèle synchrone (sans retards)
On peut se passer de l’hypothèse (h3)
25
L’algorithme de JacobiL’algorithme de Jacobi
Théorème 2Théorème 2:
Si F admet un point fixe u et si elle vérifie l’hypothèse (h4) alors
l’algorithme parallèle de Jacobi converge dans Rn vers x* point fixe
de F
La preuve (i) La suite (|| xp-u ||)pN est convergente grâce à (h2), (h4)
(ii) et (iii) sont similaires au théorème 1
26
H est un espace de Hilbert réel ((.,.) et ||..|| euclidien) Un opérateur multivoque T de H à domaine D(T) est dit
monotone si x,x’ D(T), (y y’, x x’) ≥ 0 y Tx et y’ Tx’
a-fortement monotone (a > 0) si
x,x’ D(T), ( y y’, x x’) ≥ a||x x’||2 y Tx et y’ Tx’
Les éléments x de D(T) vérifiant 0 Tx sont appelés solutions ou
zéros de l’opérateur T
Application aux opérateurs Application aux opérateurs maximaux fortement monotones:maximaux fortement monotones:
Définitions
H = Rn
27
Théorème 3Théorème 3:
Soit T un opérateur multivoque maximal a-fortement monotone sur Rn (a > 0). Alors
T admet une solution unique x*
Tout algorithme parallèle asynchrone à retards bornés associé à l'application univoque F = (I + cT )-1 où c ≥ converge dans Rn vers la solution x* de T
Application aux opérateurs Application aux opérateurs maximaux fortement monotones:maximaux fortement monotones:
Le théorème
28
C’est une application du théorème 1
On démontre que l’application F vérifie les hypothèses (h2), (h3) et (h4)
Application aux opérateurs Application aux opérateurs maximaux fortement monotones:maximaux fortement monotones:
La preuve
(h0) une sous-suite {pk}kN telle que J(pk) = {1,…, } et si(pk) = pk i {1,…, }
(h1) s N tel que i {1,…, } , p N, p s ≤ si(p) ≤ p
(h2) u Rn , F(u) = u
(h3) x,x’ Rn , ||F(x) F(x’)|| ≤ || x x’||(h4) x,x’ Rn , ||F(x) F(x’)||2 ≤ (F(x) F(x’),x x’)
29
Méthode parallèle pour le calcul des solutions des opérateurs multivoques maximaux fortement monotones
On peut se passer de la forte monotonie dans le cas de Jacobi
Application aux opérateurs Application aux opérateurs maximaux fortement monotones:maximaux fortement monotones:
Remarque
30
Application aux opérateurs Application aux opérateurs maximaux monotonesmaximaux monotones
Théorème 4Théorème 4:
Soit T un opérateur multivoque maximal monotone sur Rn admettant une solution. Alors, tout algorithme parallèle synchrone de Jacobi associé à l'application univoque F = (I + cT )-1 où c > 0 quelconque converge dans Rn vers x* solution de T
C’est une application directe du théorème 2
Si F admet un point fixe u et si elle vérifie l’hypothèse (h4) alors l’algorithme
parallèle de Jacobi converge dans Rn vers x* point fixe de F
31
Cas spéciauxCas spéciaux
On va construire des opérateurs maximaux monotones pour le :
calcul du minimum de fonctionnelles
calcul du point selle de fonctions selles
calcul de solutions des programmes convexes
calcul de solutions des problèmes de l’inégalité variationnelle
32
Cas spéciaux :Cas spéciaux : Minimum de fonctionnelles
f fonctionnelle de Rn vers R {+} convexe propre et s.c.i.
f est un opérateur maximal monotone sur Rn
33
Cas spéciaux :Cas spéciaux : Minimum de fonctionnelles
f fonctionnelle de Rn vers R {+} convexe propre et s.c.i.
Les zéros du sous-différentiel f sont les points de minimum de f
0 f(x0) f(x0) = min f(x)
xRn
34
Cas spéciaux :Cas spéciaux : Minimum de fonctionnelles
f fonctionnelle de Rn vers R {+} convexe propre et s.c.i.
f est a-fortement convexe (a > 0)
f est un opérateur a-fortement monotone
35
Cas spéciaux :Cas spéciaux : Minimum de fonctionnelles
Corollaire 1Corollaire 1: (cas asynchrone)
f de Rn vers R {+} a-fortement convexe propre et s.c.i. (a > 0). Alors
f admet un minimum unique x*
Tout algorithme parallèle asynchrone à retards bornés associé à l'application univoque
F = (I + cf )-1 où c ≥ converge dans Rn vers x* le point de minimum de f sur Rn
Application du théorème 3 à l’opérateur T = f
36
Corollaire 2Corollaire 2: (cas synchrone)
f de Rn vers R {+} convexe propre et s.c.i. telle que le problème de minimisation min f(x) admette une solution.
xRn
Alors
Tout algorithme parallèle synchrone de Jacobi associé à l'application univoque F = (I + cf )-1 où c > 0 quelconque converge dans Rn vers un point de minimum de f sur Rn
Application du théorème 4 à l’opérateur T = f
Cas spéciaux :Cas spéciaux : Minimum de fonctionnelles
37
Cas spéciaux :Cas spéciaux : Points selle
L fonctionnelle de Rn x Rm vers [ ,+]
Un point (x*,y*) de Rn x Rm vérifiant
L(x*,y) ≤ L(x*,y*) ≤ L(x,y*), (x,y) Rn x Rm
est appelé point selle de L
L(x*,y*) = min L(x,y*) = max L(x*,y)
xRn
yRm
38
Cas spéciaux :Cas spéciaux : Points selle
L fonctionnelle de Rn x Rm vers [ ,+]
L est convexe-concave si
x L(x,y) est convexe y Rm
y L(x,y) est concave x Rn
L est fonction selle (Rockafellar)
L est a-fortement convexe-concave (a > 0) si
x L(x,y) est a-fortement convexe y Rm
y L(x,y) est a-fortement concave x Rn
39
Cas spéciaux :Cas spéciaux : Points selle
L de Rn x Rm vers [ ,+] fonction selle et propre
Si
x L(x,y) est s.c.i. sur Rn y Rm
y L(x,y) est s.c.s. sur Rm x Rn
Alors L est fermée (Rockafellar)
40
Cas spéciaux :Cas spéciaux : Points selle
L fonctionnelle de Rn x Rm vers [ ,+]
L(x0 ,y0) = le sous-différentiel de L au point (x0 ,y0) Rn x Rm
C’est l’ensemble des (x,y) de Rn x Rm vérifiant
L(x0,y’) (y,y’ y0) ≤ L(x0,y0) ≤ L(x’,y0) (x,x’ x0)
(x’,y’) Rn x Rm
41
Cas spéciaux :Cas spéciaux : Points selle
L fonctionnelle de Rn x Rm vers [ ,+]
Nous associons à la fonctionnelle L l'opérateur multivoque TL défini sur
Rn x Rm par
TL(x,y) = {(z,t) Rn x Rm : (z, t) L(x,y) }
(x,y) Rn x Rm
(0,0) TL(x,y) (x,y) est point selle de L
Les points selle de L sont les solutions de l’opérateur TL
TL est maximal monotone? fortement maximal monotone?
42
PropositionProposition (Rockafellar)
Si L une fonction
selle
propre
fermée sur Rn x Rm
Alors TL est un opérateur maximal monotone sur Rn x Rm
Cas spéciaux :Cas spéciaux : Points selle
43
LemmeLemme::
Si L est une fonction a-fortement convexe-concave
Alors TL est un opérateur a-fortement monotone
Cas spéciaux :Cas spéciaux : Points selle
44
Corollaire 3Corollaire 3: (cas asynchrone)
L a-fortement convexe-concave propre et fermée de Rn x Rm vers [ ,+]. Alors L admet un point selle unique (x*,y*)
Tout algorithme parallèle asynchrone à retards bornés associé à l'application univoque
F = (I + c TL)-1 de Rn x Rm vers Rn x Rm où c ≥ converge vers le point selle
(x*,y*) de L
Application du théorème 3 à l’opérateur T = TL
Cas spéciaux :Cas spéciaux : Points selle
45
Corollaire 4Corollaire 4: (cas synchrone)
L fonction selle fermée et propre de Rn x Rm vers [ ,+] admettant un point selle .
Alors
Tout algorithme parallèle synchrone de Jacobi associé à l'application univoque F = (I + c TL)
-1 de Rn x Rm vers Rn x Rm où c > 0 quelconque converge vers un point selle de L
Application du théorème 4 à l’opérateur T = TL
Cas spéciaux :Cas spéciaux : Points selle
46
Cas spéciaux :Cas spéciaux : Programme convexe
Considérons le programme convexe
Min f0(x)
x C (P)
fi(x) ≤ 0 , (1 ≤ i ≤ m)
C convexe fermé non vide de Rn
fi : C R sont des fonctions (finies) convexes et s.c.i. pour (0 ≤ i ≤ m)
Contraintes qualifiées x0 C tel que fi(x0) < 0 , i {1,…, m}
47
Cas spéciaux :Cas spéciaux : Programme convexe
Le Lagrangien associe au problème (P) dans sa forme étendue est la fonctionnelle L définie sur Rn x Rm par
m
f0(x) + ∑ yi fi (x) si x C et y (R+)m
i=1
L(x,y) = si x C et y (R+)m
+ si x C
48
Cas spéciaux :Cas spéciaux : Programme convexe
Le problème dual associé à (P)
Max g0(y)
(D)
y (R+)m
g0 : Rm R { } définie par
g0 (y) = Inf L(x,y)
xC
49
Cas spéciaux :Cas spéciaux : Programme convexe
Si (x*,y*) est un point selle du lagrangien L sur Rn x Rm , alors x* est une solution optimale du problème primal (P) et y* est une solution optimale du problème dual (D).
Inversement
Si le problème (P) admet une solution x* et si les contraintes sont qualifiées alors il existe y (R+)m tel que (x*,y*) soit point selle de la fonctionnelle L
Nous pouvons alors énoncer :
50
Corollaire 5Corollaire 5: (cas synchrone)
Supposons que le programme convexe (P) soit à contraintes qualifiées et admette une solution.
Alors
Tout algorithme parallèle synchrone de Jacobi associé à l'application univoque F = (I + c TL)
-1 de Rn x Rm vers Rn x Rm où c > 0 quelconque converge vers (x*,y*) point selle de L, et donc x* est une solution du primal (P) et y* solution du dual (D).
Application du corollaire 4 au lagrangien L
Cas spéciaux :Cas spéciaux : Programme convexe
51
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
C convexe fermé non vide de Rn
A opérateur maximal monotone sur Rn à domaine C
Chercher x* de C tel que
y* A x* , (y*, x x*) ≥ 0 , x C
Le cône normal de C en x est
Nc(x) = { y Rn, (y, x z) ≥ 0 , z C }
52
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
L’opérateur multivoque T défini sur Rn par
Ax + Nc(x) si x CTx =
si x C
est un opérateur maximal monotone (Rockafellar)
Cet opérateur vérifie-t-il les conditions du théorème 3 ?
53
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
Lemme 1Lemme 1:
Si A est a-fortement monotone alors T est un opérateur a-fortement
monotone
54
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
Lemme 2Lemme 2:
Le solutions de l’opérateur T sont exactement les solutions du problème de
Inégalité variationnelle
55
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
Corollaire 6Corollaire 6: (cas asynchrone)
C convexe fermé non vide de Rn et A un opérateur multivoque maximal a-fortement monotone défini sur C (a > 0). Alors
Le problème de l’inégalité variationnelle admet une unique solution x*
Tout algorithme parallèle asynchrone à retards bornés associé à l'application univoque F = (I + cT )-1 où c ≥ converge dans Rn vers la solution x*
du problème de l’inégalité variationnelle
Appliquer lemme 1, lemme 2 et théorème 3 à l’opérateur T
56
Cas spéciaux :Cas spéciaux : Inégalité variationnelle
Corollaire 7Corollaire 7: (cas synchrone)
C convexe fermé non vide de Rn et A un opérateur multivoque maximal monotone défini sur C tel que le problème de l’inégalité variationnelle admette une solution
Alors
Tout algorithme parallèle synchrone de Jacobi associé à l'application univoque F = (I + cT )-1 où c > 0 quelconque converge vers x* solution du problème de l’inégalité variationnelle
Appliquer théorème 4 à l’opérateur T
57
ConclusionConclusion
Notre travail
Un algorithme parallèle asynchrone convergeant vers un point fixe
Concerne le cas non linéaire non-expansif
L’hypothèse (h4) est largement vérifiée
Applications
aux problèmes d’optimisation (non linaire)
au problème de l'inégalité variationnelle
58
Merci de votre attentionMerci de votre attention
59
QuestionsQuestions
Algorithme
Implémentable
Communications
Détection de convergence
Procédure d’arrêt
60
Algorithme : Algorithme : Implémentation
Difficile dans le cas général
Implémentable dans le cas où T = f
Nouvelle méthode (Solodov et Svaiter 2000)
Choisir x0 Rn et prendre k = 0
Ayant xk , choisir k > 0 et k [0,1[ et trouver
yk Rn et vk Tyk tel que 0 = vk + k (yk xk) + rk
où
|| rk || ≤ k max {|| vk || , k ||yk xk ||}
Stop si vk = 0 ou yk = xk
Sinon , prendre
xk+1 = xk (vk , xk yk ) || vk ||-2 vk
prendre k = k+1 et repeter
Hybrid Proximal
Point algorithm
HPPA
62
Algorithme :Algorithme :Détection de convergence
Un processeur centralise les convergences locales de tous les processeurs Ce processeur se comporte de la même manière que tous les autres, mais doit juste effectuer
une opération en plus
Chaque processeur détermine sa convergence locale : On calcule la différence d’évolution entre 2 itérations
On compte le nombre de fois consécutives où cette différence est inférieure à un seuil fixé
Si le compteur dépasse un seuil, on considère qu’il y a convergence locale
Envoie d’un message de convergence au processeur centralisateur
S’il y a divergence après une convergence, envoie d’un message d’annulation de convergence
Convergence globale détectée lorsque toutes les convergences locales sont reçues
63
Algorithme :Algorithme :Procédure d’arrêt
Lorsqu’il détecte la convergence globale, le processeur centralisateur
envoie un message d’arrêt général
Quand les processeurs reçoivent le message d’arrêt, ils quittent la boucle
d’itération
L’arrêt nécessite la fin de tous les messages en cours
64
Jace :Jace :Présentation
Java Asynchronous Computation Environment
Environnement de calcul asynchrone Java
Conçu et optimisé pour le calcul itératif asynchrone
(calcul, communication)
Architecture de Jace (trois entités principales)
les Tâches
le Démon
le Spawner (Distributeur de tâches)
65
Jace :Jace : Architecture
Les Tâches
héritent d'une classe Jace nommée Task proposant les méthodes de communications
et de synchronisations
66
Le Démon
présent sur chaque machine participant au calcul
contient tous les objets nécessaires pour :
configurer la machine parallèle
router les messages
gérer les taches
responsable de la synchronisation et de la communication entre les nœuds de calculs
(réception et envoie de message)
utilise RMI (Remote Method Invocation ) pour communiquer
Jace :Jace : Architecture
67
Le Spawner (Distributeur de tâches)
se charge de distribuer les tâches sur l'ensemble des processeurs suivant un certain
protocole de distribution de tâches
instancie à distance une tâche de calcul s'intégrant au démon
Jace :Jace : Architecture