solveurs parallèles pour les systèmes linéaires issus des

40
Nicole Spillane (CNRS, CMAP, École Polytechnique) P. Gosselet (CNRS, Université de Lille), D.J. Rixen (TU Munich), F.-X. Roux (ONERA) Solveurs parallèles pour les systèmes linéaires issus des équations aux dérivées partielles 7 octobre 2019 Journée de rentrée du CMAP

Upload: others

Post on 26-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Nicole Spillane(CNRS, CMAP, École Polytechnique)

P. Gosselet (CNRS, Université de Lille),D.J. Rixen (TU Munich),F.-X. Roux (ONERA)

Solveurs parallèles pour les systèmeslinéaires issus des équations aux

dérivées partielles

7 octobre 2019Journée de rentrée du CMAP

Page 2: Solveurs parallèles pour les systèmes linéaires issus des

Introduction auCalcul Parallèle

1 Introduction au Calcul Paral-lèle

2 Decomposition de domaine:BDD

3 BDD MultipréconditionnéAdaptatif

4 Deux problèmes ouverts

Page 3: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Introduction au calcul parallèle: (juin 2019)

Définition: 1Tflop/s = 1012 floating point operations per secondNicole Spillane (CNRS,CMAP) 2/30

Page 4: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Eicacité: RmaxRpeak

des ordinateurs du TOP500 (juin 2019)I Rmax: Meilleure performance mesurée pour LINPACKI Rpeak: Performance théorique de pointe

mesurées en flops (floating-point operation per second).

https://www.top500.org/statistics/efficiency-power-cores/Nicole Spillane (CNRS,CMAP) 3/30

Page 5: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Eicacité: RmaxRpeak

des ordinateurs du TOP500 (juin 2019)

I Rmax: Meilleure performance mesurée pour HPCGI Rpeak: Performance théorique de pointe

Définition : 1 Pflop/s= 1015 floating-point operation per second

Nicole Spillane (CNRS,CMAP) 4/30

Page 6: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Cadre de cet exposé et de mes travaux‘The performance of a computer is a complicated issue, a function of

many interrelated quantities. These quantities include the application,the algorithm, the size of the problem, the high-level language, theimplementation, the human level of eort used to optimize theprogram, the compiler’s ability to optimize, the age of the compiler, theoperating system, the architecture of the computer, and the hardwarecharacteristics.’

J. Dongarra, P. Luszczek and A. Petitet The LINPACK Benchmark: past, present and futureConcurrency and Computation: Practice and Experience, John Wiley & Sons, Ltd.: 803–820, 2003

I Application: Systèmes linéaires issus de la discrétisation paréléments finis des équations aux dérivées partielles elliptiques.

I Taille de problème: 100 millions de degrés de liberté.I Architecture du calculateur: 5000 processeurs.

Nicole Spillane (CNRS,CMAP) 5/30

Page 7: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Une parenthèse sur l’eicacité énergétique des ordinateursdu TOP500 (juin 2019)

Le TOP500 classé par ordre de LINPACK Flops/wa :Nicole Spillane (CNRS,CMAP) 6/30

Page 8: Solveurs parallèles pour les systèmes linéaires issus des

Decomposition dedomaine: BDD

1 Introduction au Calcul Paral-lèle

2 Decomposition de domaine:BDD

3 BDD MultipréconditionnéAdaptatif

4 Deux problèmes ouverts

Page 9: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Cadre MathématiqueTrouver u∗ ∈ Rn satisfaisant

Ku∗ = fI K est symétrique définie

positive (spd),

I K =∑

τ∈Th

Kτ ,

I Les matrices Kτ sontsymétriques et positives.

Nicole Spillane (CNRS,CMAP) 7/30

Page 10: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Deux observations à propos des solveurs linéairesparallèles pour résoudre Ku∗ = f.

1. Les solveurs directs sont robustes (mais diiciles à paralléliser).ex.: Factorisation de Cholesky suivie de descente et remontée.

K =

L>

L

u∗ =

L> \

L\

f

2. Les solveurs itératifs sont naturellement parallèles (mais pasrobustes).ex.: Gradient conjugué préconditionné.

0 20 40 60 80 10010−9

10−7

10−5

10−3

10−1

101

Iterations

ErrorBou

nd(lo

gscale)

κ = 10κ = 100κ = 1000 ‖u∗ − um‖A

‖u∗ − u0‖A6 2

[√κ− 1√κ + 1

]m, κ =

λmax

λmin.

Un solveur hybride Direct/Itératifpourrait être à la fois parallèle etrobuste.

ex.: Décomposition de domaine.

Nicole Spillane (CNRS,CMAP) 8/30

Page 11: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Deux observations à propos des solveurs linéairesparallèles pour résoudre Ku∗ = f.

1. Les solveurs directs sont robustes (mais diiciles à paralléliser).ex.: Factorisation de Cholesky suivie de descente et remontée.

K =

L>

L

u∗ =

L> \

L\

f

2. Les solveurs itératifs sont naturellement parallèles (mais pasrobustes).ex.: Gradient conjugué préconditionné.

0 20 40 60 80 10010−9

10−7

10−5

10−3

10−1

101

Iterations

ErrorBou

nd(lo

gscale)

κ = 10κ = 100κ = 1000 ‖u∗ − um‖A

‖u∗ − u0‖A6 2

[√κ− 1√κ + 1

]m, κ =

λmax

λmin.

Un solveur hybride Direct/Itératifpourrait être à la fois parallèle etrobuste.

ex.: Décomposition de domaine.Nicole Spillane (CNRS,CMAP) 8/30

Page 12: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Balancing Domain Decomposition (BDD): Ku∗ = f (K spd)Formulation Globale

Ω Γ Ωs Γs

J. Mandel.Balancing domaindecomposition.Comm. Numer. MethodsEngrg., 9(3):233–241, 1993.

Ku∗ = f⇔

(KΓΓ KΓI

KIΓ KII

)(u∗,Γu∗,I

)=(fΓfI

)(frontieres)(interieurs)

⇔u∗,I = K−1II (fI − KIΓu∗,Γ)

et

(KΓΓ − KΓIK−1II KIΓ)︸ ︷︷ ︸:=A

u∗,Γ = fΓ − KΓIK−1II fI︸ ︷︷ ︸:=b

.

BDD est un solveur hybride (itératif/direct):I Résolution de Au∗,Γ = b par gradient conjugué préconditionné.

I A chaque itération une résolution directe est réalisée: K−1II .

Nicole Spillane (CNRS,CMAP) 9/30

Page 13: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Balancing Domain Decomposition (BDD): Ku∗ = f (K spd)Formulation Parallèle

Ω Γ Ωs Γs

Bon préconditionneur:

I bonneapproximationde A−1,

I Facile à calculer.

A = KΓΓ−KΓIK−1II KIΓ; KII =

K1I1I1

. . .KNIN IN

.

L’opérateur A est une somme de contributionslocales:

A =N∑

s=1

Rs>SsRs

∣∣∣∣∣∣∣∣∣

Ss := KsΓsΓs − Ks

ΓsIs (KsIsIs )−1Ks

IsΓs

Γs ΓRs>

Rs

Le préconditionneur H aussi:

H :=N∑

s=1

Rs>DsSs−1DsRs, avecN∑

s=1

Rs>DsRs = I.

Nicole Spillane (CNRS,CMAP) 10/30

Page 14: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Balancing Domain Decomposition (BDD): Ku∗ = f (K spd)Formulation Parallèle

Ω Γ Ωs Γs

Bon préconditionneur:

I bonneapproximationde A−1,

I Facile à calculer.

A = KΓΓ−KΓIK−1II KIΓ; KII =

K1I1I1

. . .KNIN IN

.

L’opérateur A est une somme de contributionslocales:

A =N∑

s=1

Rs>SsRs

∣∣∣∣∣∣∣∣∣

Ss := KsΓsΓs − Ks

ΓsIs (KsIsIs )−1Ks

IsΓs

Γs ΓRs>

Rs

Le préconditionneur H aussi:

H :=N∑

s=1

Rs>DsSs−1DsRs, avecN∑

s=1

Rs>DsRs = I.

Nicole Spillane (CNRS,CMAP) 10/30

Page 15: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Balancing Domain Decomposition (BDD): Ku∗ = f (K spd)Formulation Parallèle

Ω Γ Ωs Γs

Bon préconditionneur:

I bonneapproximationde A−1,

I Facile à calculer.

A = KΓΓ−KΓIK−1II KIΓ; KII =

K1I1I1

. . .KNIN IN

.

L’opérateur A est une somme de contributionslocales:

A =N∑

s=1

Rs>SsRs

∣∣∣∣∣∣∣∣∣

Ss := KsΓsΓs − Ks

ΓsIs (KsIsIs )−1Ks

IsΓs

Γs ΓRs>

Rs

Le préconditionneur H aussi:

H :=N∑

s=1

Rs>DsSs−1DsRs, avecN∑

s=1

Rs>DsRs = I.

Nicole Spillane (CNRS,CMAP) 10/30

Page 16: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

elques remarques

I Les noyaux des matrices Ss sont traités par déflation(projection) et

H :=N∑

s=1

Rs>DsSs†DsRs ( ·†: pseudoinverse).

I Le choix des matrices Ds est important.

I Les valeurs propres de l’opérateur préconditionné sont:

λmin(HA) > 1

en conséquence de:∑N

s=1 Rs>DsRs = I.

Nicole Spillane (CNRS,CMAP) 11/30

Page 17: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Élasticité linéaire 2D avec sous domaines homogènes

N = 81 sous domaines, ν = 0.4, E1 = 107 et E2 = 1012.

Mod

ule

deYo

ungE

Part

itio

nré

guliè

re

0 2 4 6 8 10 12

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

Nicole Spillane (CNRS,CMAP) 12/30

Page 18: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Perte de robustesse: Sous domaines hétérogènesN = 81 sous domaines, ν = 0.4, E1 = 107 et E2 = 1012.

Mod

ule

deYo

ungE

Part

itio

nM

etis

0 20 40 60 80 100 120 140

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

Trois objectifs pour les nouvelles méthodes de DD:I Fiabilité: robustesse et passage à l’échelle.I Eicacité: s’adaptent automatiquement au problème.I Simplicité: implémentation non invasive.

Nicole Spillane (CNRS,CMAP) 13/30

Page 19: Solveurs parallèles pour les systèmes linéaires issus des

BDD Multiprécon-ditionné Adaptatif

1 Introduction au Calcul Paral-lèle

2 Decomposition de domaine:BDD

3 BDD MultipréconditionnéAdaptatif

4 Deux problèmes ouverts

Page 20: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

’est-ce que multipréconditionner ? (H)Ax∗ = (H)bPCG : Minimiser ‖x∗ − xi+1‖A parmi xi + span(Hri).Minimiser dans un espace plus grand améliore la convergence:

I déflation (ex: avec un espace grossier),

I méthodes par blocs,

I ou multipréconditionnement !

MPCG: Minimiser ‖x∗ − xi+1‖A parmi xi + span(H1ri , … ,HNri)où H1, . . . , HN sont N préconditionneurs.

Nicole Spillane (CNRS,CMAP) 14/30

Page 21: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

’est-ce que multipréconditionner ? (H)Ax∗ = (H)bPCG : Minimiser ‖x∗ − xi+1‖A parmi xi + span(Hri).Minimiser dans un espace plus grand améliore la convergence:

I déflation (ex: avec un espace grossier),

I méthodes par blocs,

I ou multipréconditionnement !

MPCG: Minimiser ‖x∗ − xi+1‖A parmi xi + span(H1ri , … ,HNri)où H1, . . . , HN sont N préconditionneurs.

R. Bridson and C. Greif.A multipreconditioned conjugate gradient algorithm. SIAM J. Matrix Anal. Appl., 2006.

Application naturelle en DD: un préconditionneur par sous-domaine

H =N∑

s=1

Rs>DsSs−1DsRs︸ ︷︷ ︸

:=Hs

.

Nicole Spillane (CNRS,CMAP) 14/30

Page 22: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

’est-ce que multipréconditionner ? (H)Ax∗ = (H)bPCG : Minimiser ‖x∗ − xi+1‖A parmi xi + span(Hri).Minimiser dans un espace plus grand améliore la convergence:

I déflation (ex: avec un espace grossier),

I méthodes par blocs,

I ou multipréconditionnement !

MPCG: Minimiser ‖x∗ − xi+1‖A parmi xi + span(H1ri , … ,HNri)où H1, . . . , HN sont N préconditionneurs.

D. J. Rixen.Substructuring and Dual Methods in Structural Analysis. PhD thesis, 1997.

R. Bridson and C. Greif.A multipreconditioned conjugate gradient algorithm. SIAM J. Matrix Anal. Appl., 2006.

C. Greif, T. Rees, and D. Szyld.MPGMRES: a generalized minimum residual method with multiple preconditioners. Technical report, 2011 (nowpublished in SeMA Journal).

C. Greif, T. Rees, and D. Szyld.Additive Schwarz with variable weights. DD21 proceedings, 2014.

P. Gosselet, D. J. Rixen, F.-X. Roux, and N. S.Simultaneous FETI and block FETI. . . International Journal for Numerical Methods in Engineering, 2015.

Nicole Spillane (CNRS,CMAP) 14/30

Page 23: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

CG multipréconditionné pour Ax∗ = b prec. par Hss=1,…,NI A, H ∈ Rn×n spd, I H =

∑Ns=1H

s, où Hs spsd.

MPCG

1 x0 given ; ^ Estimation initiale

2 r0 = b− Ax0;

3 Z0 =[H1r0 | … |HN r0

];

4 P0 = Z0; ^ Première direction de recherche

5 for i = 0, 1, … , convergence do

6 Qi = APi ;

7 αi = (Q>i Pi )−1 (Pi>ri );

8 xi+1 = xi + Piαi ; ^ Mise à jour de solution approchée

9 ri+1 = ri −Qiαi ; ^ Mise à jour résidu

10 Zi+1 =[H1ri+1 | … |HN ri+1

]; ^ Multiprec.

11 βi,j = (Q>j Pj )−1(Q>j Zi+1), j = 0, … , i;

12 Pi+1 = Zi+1 −∑i

j=0 Pjβi,j ; ^ Projee et orthog.

13 end

14 Return xi+1;

PCG

x0 given ;

r0 = b− Ax0 ;

z0 = Hr0;

p0 = z0;

for i = 0, 1, … , conv. do

qi = Api ;

αi = (q>i pi )−1(p>i ri );

xi+1 = xi + αipi ;

ri+1 = ri − αiqi ;

zi+1 = Hri+1;

βi = (q>i pi )−1(q>i zi+1);

pi+1 = zi+1 − βipi ;

end

Return xi+1;

Nicole Spillane (CNRS,CMAP) 15/30

Page 24: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

CG multipréconditionné pour Ax∗ = b prec. par Hss=1,…,NI A, H ∈ Rn×n spd, I H =

∑Ns=1H

s, où Hs spsd.

MPCG

1 x0 given ; ^ Estimation initiale

2 r0 = b− Ax0;

3 Z0 =[H1r0 | … |HN r0

];

4 P0 = Z0; ^ Première direction de recherche

5 for i = 0, 1, … , convergence do

6 Qi = APi ;

7 αi = (Q>i Pi )−1 (Pi>ri );

8 xi+1 = xi + Piαi ; ^ Mise à jour de solution approchée

9 ri+1 = ri −Qiαi ; ^ Mise à jour résidu

10 Zi+1 =[H1ri+1 | … |HN ri+1

]; ^ Multiprec.

11 βi,j = (Q>j Pj )−1(Q>j Zi+1), j = 0, … , i;

12 Pi+1 = Zi+1 −∑i

j=0 Pjβi,j ; ^ Projee et orthog.

13 end

14 Return xi+1;

Remarque

xi , ri ∈ Rn,

Zi , Pi , ∈ Rn×N ,

I n: taille du pb.,

I N : nb. de precs.

Propriétés

1. Minimisation globaledans l’espace

x0 +⊕i−1j=0 range(Pj )

de dimension: i × N .

2. P>i APj = 0 (i 6= j),mais pas de récurrencecourte.

Nicole Spillane (CNRS,CMAP) 16/30

Page 25: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (élasticité hétérogène E2/E1 = 105)

0 20 40 60 80 100 120 14010−7

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

MPBDDBDD

0 20 40 60 80 100 120 140

500

1,000

1,500

Iterations

Dim

ension

oftheminim

izationspace MPBDD

BDD

0 20 40 60 80 100 120 140

0

0.5

1

1.5

2

2.5·104

Iterations

Num

berof

localsolves

MPBDDBDD

Nicole Spillane (CNRS,CMAP) 17/30

Page 26: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Carburant solide (élasticité linéaire avec FETI) – en collaboration avec

C. Bovet (ONERA)

6721 inclusions rigides, E2/E1 6 106, 57 Mdofs, 360 sous dom., 1440 cœurs

Nicole Spillane (CNRS,CMAP) 18/30

Page 27: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Bilan pour BDD Multipréconditionné

3 Bonne convergence donc les contributions locales Hsri formentun bon espace de minimisation.

7 On génère beaucoup de directions de recherche à stocker.

7 Il faut inverser P>i APi ∈ RN×N à chaque itération pour

αi = (P>i APi)−1 (Pi>ri).

Rendre la méthode multipréconditionnée adaptative.

I seuls quelques vecteurs sont nécessaires pour accélérer laconvergence (bilan de travaux précédents sur la méthodeGenEO).

Nicole Spillane (CNRS,CMAP) 19/30

Page 28: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

CG Multipréconditionné Adaptatif pour Ax∗ = b préconditionné

par∑N

s=1Hs. (τ ∈ R+ est choisi par l’utilisatrice – ex: τ = 0.1)

1 x0 chosen;2 r0 = b− Ax0; Z0 = Hr0; P0 = Z0;3 for i = 0, 1, … , convergence do4 Qi = APi ;5 αi = (Q>i Pi )−1 (Pi

>ri );6 xi+1 = xi + Piαi ;7 ri+1 = ri −Qiαi ;

8 ti =(Piαi )>A(Piαi )

r>i+1Hri+1;

9 if ti < τ then ^ τ -test10 Zi+1 =

[H1ri+1 | … |HN ri+1

]; ^ Multiprec.

11 else12 Zi+1 = Hri+1; ^ Prec.13 end14 βi,j = (Q>j Pj )−1(Q>j Zi+1), j = 0, … , i;

15 Pi+1 = Zi+1 −i∑

j=0Pjβi,j ;

16 end17 Return xi+1;

Remarque

xi , ri ∈ Rn.

Zi ,Pi ∈ Rn×N ou Rn,

I n: taille du pb.,

I N : nb. de precs..

Propriétés

1. Minimisation Globaledans

x0 +⊕i−1j=0 range(Pj )

de dim. i 6 dim 6 i×N .

2. P>i APj = 0 (i 6= j),mais pas de récurrencecourte.

Nicole Spillane (CNRS,CMAP) 20/30

Page 29: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Résultat théorique (1/2): Choix du τ -test ?Théorème

Si le τ–test retourne ti > τalors

‖x∗ − xi+1‖A‖x∗ − xi‖A

6

(1

1 + τ

)1/2

.

xi+1 = xi + Piαi ;

ti =(Piαi )

>A(Piαi )

r>i+1Hri+1;

if ti < τ thenZi+1 =

[H1ri+1 | … |HN ri+1

]else

Zi+1 = Hri+1 ;end

Preuve (inspirée par [Axelsson, Kaporin, ’01]):

x∗ = x0 +n∑

i=0

Piαi = xi +n∑

j=i

Pjαj

⇒ ‖x∗−xi‖2A =n∑

j=i

‖Pjαj‖2A ⇒ ‖x∗−xi−1‖2A = ‖x∗−xi‖2A+‖Pi−1αi−1‖2A.

⇒ ‖x∗ − xi−1‖2A‖x∗ − xi‖2A

= 1+‖ri‖2H

‖x∗ − xi‖2A︸ ︷︷ ︸= ‖x∗ − xi‖2AHA/‖x∗ − xi‖2A > λmin > 1

‖Pi−1αi−1‖2A‖ri‖2H

> 1+‖Pi−1αi−1‖2A‖ri‖2H︸ ︷︷ ︸=ti−1

> 1+τ .

Nicole Spillane (CNRS,CMAP) 21/30

Page 30: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Résultat Théorique (2/2):Pas de travail supplémentaire pour les problèmes bienconditionnés

Théorème

ti > 1/λmax donc si τ < 1/λmax alors AMPCG est PCG.

Nicole Spillane (CNRS,CMAP) 22/30

Page 31: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (0/4): Sous domaines homogènes

0 2 4 6 8 10 12

10−7

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

AMPBDDMPBDDBDD

0 2 4 6 8 10 12

200

400

600

800

Iterations

Dim

ension

oftheminim

izationspace

AMPBDDMPBDDBDD

0 2 4 6 8 10 12

0

1,000

2,000

3,000

4,000

Iterations

Num

berof

localsolves

AMPBDDMPBDDBDD

Nicole Spillane (CNRS,CMAP) 23/30

Page 32: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (1/4) – Élasticité avec E2/E1 = 105

0 20 40 60 80 100 120 14010−7

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

AMPBDDMPBDDBDD

0 20 40 60 80 100 120 140

500

1,000

1,500

Iterations

Dim

ension

oftheminim

izationspace AMPBDD

MPBDDBDD

0 20 40 60 80 100 120 140

0

0.5

1

1.5

2

2.5·104

Iterations

Num

berof

localsolves

AMPBDDMPBDDBDD

Nicole Spillane (CNRS,CMAP) 24/30

Page 33: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (2/4): Zoom sur nvelles méthodes

0 5 10 15 2010−7

10−6

10−5

10−4

10−3

10−2

10−1

100

Iterations

Error(lo

gscale)

AMPBDDMPBDD

0 5 10 15 20

500

1,000

1,500

Iterations

Dim

ension

oftheminim

izationspace

AMPBDDMPBDD

0 5 10 15 20

0

2,000

4,000

6,000

8,000

Iterations

Num

berof

localsolves

AMPBDDMPBDD

Nicole Spillane (CNRS,CMAP) 25/30

Page 34: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (3/4): Scalabilité Faible – FETII Soware: Z-Set

I Cluster: Cobalt at CCRT/TGCC

I 1422 computational nodes with Intel BroadwellProcessors: 2.4 GHz, 28 cores

I 128 Go SDRAM, infiniband Mellanox network

I 7 cores per subdomain and local factorizationsare performed with mumps.

8 27 64 125 216 343 5120

500

1,000

1,500

2,000

2,500

Nb. of subdomains

Walltime[s]

FETIAMPFETILAMPFETIG

N #DOFs (×106) #coeurs #iter. # espace de min. temps (s)8 1.6 56 69 132 89.5864 12.5 448 112 742 210.80216 42.0 1512 107 2257 277.30512 99.2 3584 108 5729 376.30

C. Bovet, P. Gosselet, A. Parret Freaud, and N. S.Adaptive multi preconditioned FETI: scalability results and robustness assessment.Computers and Structures, 2017.

Nicole Spillane (CNRS,CMAP) 26/30

Page 35: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Illustration Numérique (4/4): Matériau CompositeFETI – en collaboration avec A. Parret Freaud (Safran Tech)

Nicole Spillane (CNRS,CMAP) 27/30

Page 36: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Conclusion

I Multipréconditionnement→ Robustesse.

I Adaptivité→ Eicacité.

I Démonstration dans un code PETSc4py développé avec LoïcGouarin: github.com/gouarin/GenEO

N. S.An Adaptive Multipreconditioned Conjugate GradientSISC, 2016.

C. Bovet, P. Gosselet, A. Parret Freaud, and N. S.Adaptive multi preconditioned FETI: scalability results and robustness assessment.Computers and Structures, 2017.

Nicole Spillane (CNRS,CMAP) 28/30

Page 37: Solveurs parallèles pour les systèmes linéaires issus des

Deux prob-lèmes ouverts

1 Introduction au Calcul Paral-lèle

2 Decomposition de domaine:BDD

3 BDD MultipréconditionnéAdaptatif

4 Deux problèmes ouverts

Page 38: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Peut-on garantir robustesse et eicacité d’une méthode deDD pour les problèmes non symétriques?

On ne sait pas caractériser un bon préconditionneur en général.

Théorème (Greenbaum, Ptak, Strakos)Étant donnée une suite de nombres décroissante et positivef (0) > f (1) > · · · > f (n− 1) > 0 et un ensemble de complexes nonnuls λ1, … ,λn, il existe A ∈ Rn×n et b ∈ Rn avec ‖b−Ax0‖ = f (0)tels que

I f (k) = ‖b− Axk‖, k = 1,… , n− 1, où xk est la solutionapprochée donnée à l’itération k par l’algorithme GMRESappliqué au problème Ax = b, initialisé par x0,

I A a pour valeurs propres λ1, … ,λn.Greenbaum, A., Ptak, V. and Strakos, Z.Any Convergence Curve is Possible for GMRES.SIAM Matrix Anal. Appl., 1996.

Voir aussi les travaux de Marcella (estimations basées sur le champde valeurs de la matrice).

Nicole Spillane (CNRS,CMAP) 29/30

Page 39: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Peut-on garantir robustesse et eicacité d’une méthode deDD pour les problèmes non symétriques?

On ne sait pas caractériser un bon préconditionneur en général.

Théorème (Greenbaum, Ptak, Strakos)Étant donnée une suite de nombres décroissante et positivef (0) > f (1) > · · · > f (n− 1) > 0 et un ensemble de complexes nonnuls λ1, … ,λn, il existe A ∈ Rn×n et b ∈ Rn avec ‖b−Ax0‖ = f (0)tels que

I f (k) = ‖b− Axk‖, k = 1,… , n− 1, où xk est la solutionapprochée donnée à l’itération k par l’algorithme GMRESappliqué au problème Ax = b, initialisé par x0,

I A a pour valeurs propres λ1, … ,λn.Greenbaum, A., Ptak, V. and Strakos, Z.Any Convergence Curve is Possible for GMRES.SIAM Matrix Anal. Appl., 1996.

Voir aussi les travaux de Marcella (estimations basées sur le champde valeurs de la matrice).

Nicole Spillane (CNRS,CMAP) 29/30

Page 40: Solveurs parallèles pour les systèmes linéaires issus des

Introduction au Calcul Parallèle Decomposition de domaine: BDD BDD Multipréconditionné Adaptatif Deux problèmes ouverts

Peut-on garantir robustesse et eicacité d’une méthode deDD à partir de la seule donnée Ax = b?

Rappel des hypothèses faites au début

I A est symétrique définie positive,

I A =∑

τ∈Th

Aτ , avec Aτ symétriques et positives.

A quoi sert cee hypothèse ?

I On assemble A|Ωs =∑τ⊂Ωs Aτ (matrice du problème de

Neumann homogène sur le sous-domaine Ωs).

IN∑

s=1

〈A|Ωsx, x〉 6 N〈Ax, x〉, pour tout x ∈ Rn×n.

Problème ouvertPeut-on reconstruire des ‘matrices de Neumann’ à partir de lamatrice assemblée A ? Doivent être symétriques, positives, locales.

Nicole Spillane (CNRS,CMAP) 30/30