• Aucun résultat trouvé

Accélération des solveurs de Krylov

Dans le document Extension du domaine de la décomposition (Page 31-34)

Une partie significative de mes travaux a traité des méthodes de décomposition de

domaine de type Schur. Après m’être intéressé à une mise en œuvre générique de ces

méthodes (primales, duales, mixtes, recondensées) [Gosselet et Rey, 2007] au sein du

code Zset, j’ai travaillé à leur accélération.

C’est une question qui a fait d’importants progrès récemment. L’objectif était

prin-cipalement de rendre ces méthodes robustes vis à vis des hétérogénéités, des interfaces

irrégulières, de l’élancement des sous-domaines, de l’incompressibilité. . . Chacune de ces

questions a soulevé de nombreux travaux, à chaque fois les auteurs proposaient

d’amélio-rer des ingrédients dans le précondionneur (notamment le scaling) ou dans les problèmes

grossiers (ou plus globalement dans les contraintes de continuité imposées au système

dans BDDC et FETI-DP) [Farhat et Rixen, 1995; Rixen et Farhat, 1999a; Klawonn et

Rheinbach, 2007; Klawonn et al., 2008; Dryja et al., 1996; Mandel et Brezina, 1996;

Dohrmann et Widlund, 2009, 2010; Beirão da Veiga et al., 2014; Spillane et al., 2014;

Klawonn et al., 2014b].

Dans [Gosselet et Rey, 2002; Gosselet et al., 2013], on propose de profiter d’une

succession de résolutions de systèmes linéaires « proches » pour anticiper et éliminer les

difficultés de convergence : à la fin de chaque système on réalise à coût nul une recherche

des valeurs propres du système aux valeurs propres généralisées formé par un opérateur

et son préconditionneur. Pour ces méthodes (FETI, BDD. . . ), on sait que le spectre est

minoré par 1 et que seules posent problème les valeurs propres hautes isolées. Par un

critère en stagnation, on arrive à sélectionner ces valeurs propres et on se sert des vecteurs

propres associés comme augmentation pour les systèmes suivants.

non-Accélération des solveurs de Krylov 31

linéaires par un solveur Newton-Raphson et à l’exploration de plans d’expérience pour

l’optimisation des composants d’un matériau composite ou d’un matériau plastique. Le

tableau 3.1 résume les performances de cette approche pour le calcul de la plasticité dans

une plaque trouée en traction telle que présentée à la figure 3.4. On suppose que les

com-portements suivent une loi normale avec un écart type de 10% et on réalise 100 tirages.

On compare, pour FETI muni de différents préconditionneurs, une résolution classique

(cg), la réutilisation de la totalité de l’espace de Krylov (trks) ou d’une sélection (srks), en

termes de nombre moyen d’itérations par système linéaire, de taille moyenne ou maximale

de l’espace d’augmentation, de temps CPU et humain (WCT). On voit que la sélection

des vecteurs problématiques donne un bon compromis, en particulier pour le

précondi-tionneur lumped : le nombre d’itérations est divisé par deux et le temps de calcul décroît

de 36%.

Dans [Kerfriden et al., 2011], on essaie d’utiliser de conserve la réduction de

mo-dèle (par la POD) et les sous-espaces de Krylov. La méthode conçue, à rapprocher de

l’hyper-réduction [Ryckelynck, 2008], donne des résultats intéressants sur des problèmes

complexes de fissuration. Les coûts de calcul restent néanmoins assez importants, et

l’ac-colement des modes POD (issus d’une SVD) et des vecteurs de Ritz (issus d’un problème

aux valeurs propres généralisées) n’est pas conceptuellement satisfaisant en l’état.

F

IGURE

3.4 –

Défor-mation plastique

precond. method avg. avg. max avg. avg.

# it n

c

n

c

CPU WCT

Dirichlet cg 25.6 – – 1.21 3.03

Dirichlet trks

1.4 358 492 2.66 9.83

Dirichlet srks14 16.1 17 19 0.98 2.35

lumped cg 41.4 – – 1.03 3.24

lumped trks

1.2 520 695 4.72 6.98

lumped srks14 19.1 43 45 0.87 2.08

calcul trop lent, arrêté avant la fin

T

ABLEAU

3.1 – Plaque trouée, résumé des performances

Récemment, il a été compris qu’il était également possible d’anticiper les modes

pro-blématiques en relocalisant le problème aux valeurs propres généralisées sur chaque

sous-domaine et ses voisins [Spillane et Rixen, 2013; Dolean et al., 2015b]. Il est alors proposé

de résoudre initialement ces problèmes aux valeurs propres en parallèle à l’aide

d’itéra-tions de Lanczos, d’assembler un problème grossier puis de résoudre le problème initial

par un gradient conjugué augmenté. C’est une approche extrêmement robuste et

com-plètement algébrique (inutile de connaître l’équation aux dérivées partielles initiale). Un

seul aspect peut sembler décevant : étant donné la proximité entre solveur de Lanczos et

gradient conjugué, on se retrouve pratiquement à résoudre une première fois le système

(certes dans une version distribuée) pour trouver ce qui pose problème et le résoudre une

seconde fois en ayant éliminé les difficultés.

Dans [Gosselet et al., 2015] nous avons proposé de généraliser la méthode S-FETI

proposé par Daniel Rixen dans sa thèse. Cette méthode laisse, à chaque itération du

gra-dient conjugué, chaque sous-domaine contribuer à la solution : on recombine

optimale-ment le bloc de directions générées. Cela revient à définir un scaling variable à chaque

ité-ration et donc à adapter le préconditionneur. Cette méthode s’interprète d’ailleurs comme

un multipréconditionneur [Bridson et Greif, 2006]. Les performances obtenues sont

ex-trêmement satisfaisantes, le solveur est robuste vis à vis des hétérogénéités, des

décou-pages irréguliers et des sous-domaines élancés. De plus ces méthodes s’étendent assez

facilement au cas non-symétrique [Bovet et al., 2016], ce qui n’est pas encore le cas des

techniques basées sur une analyse préalable.

Le coût de ces approches est néanmoins important, une campagne d’essais est

actuel-lement menée sur un code optimisé pour évaluer jusqu’à combien de sous-domaines cette

méthode reste valable (en incluant des techniques d’adaptations proposées par Nicole

Spillane [Spillane, 2016]). Notre objectif est d’atteindre des performances satisfaisantes

sur des clusters de taille modérée tels que l’on en rencontre chez les équipes d’ingénierie

(quelques dizaines de milliers de cœurs).

En complément de l’annexe E, on illustre à la figure 3.6 l’intérêt de la méthode sur une

décomposition irrégulière donnée à la figure 3.5 (haut). Il s’agit d’un cas simple de

struc-ture homogène en traction mais décomposée automatiquement, résolue avec BDD. Un

sous-domaine possède une « péninsule », celle-ci est artificiellement souple et engendre

à l’initialisation une contribution importante à la direction de recherche visible sur la

fi-gure 3.5 (bas) (la couleur correspond à l’amplitude du déplacement). Une combinaison

classique crée une direction de recherche inadaptée, alors que recombiner les directions

permet de limiter les dégâts causés par cette mauvaise géométrie.

F

IGURE

3.5 – Contributions locales à la direction de recherche (bas)

pour une décomposition irrégulière (haut)

Contribution au calcul en moyenne fréquence 33

À noter que l’idée de multiplier les directions de recherche avait déjà été exploitée

pour la résolution de problèmes exhibant des motifs répétés (ou une périodicité partielle,

ce qui est très fréquent en ingénierie)[Gosselet et al., 2009], avec là encore des

perfor-mances très satisfaisantes.

Dans le document Extension du domaine de la décomposition (Page 31-34)

Documents relatifs