HPC en mécanique des matériaux et structures L

Download Report

Transcript HPC en mécanique des matériaux et structures L

Journée SN&CHP – Onera Chatillon – 20 mai 2014
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Vincent Chiaruttini
[email protected]
Onera, DMSM/MNU, Châtillon, France
Raphaël Poncet , Frédéric Feyel,
Josselyn Touzeau, Johann Rannou, Teddy Chantrait...
Contexte
Rupture
Durée de vie de pièces critiques aéronautiques
Chargements
intenses
Initiation de
défaut(s)
Fatigue
Vibrations
Propagation
Remplacement du
composant
Modélisations
Endommagement/rupture
fissuration
Aspects multiéchelles
Direction - Conférence
z
2
Modèles de plus en plus complexes
=> Besoin de stratégies de calcul haute performance
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
90°
+45°
45°
0°
Aller plus loin dans la modélisation mécanique
des matériaux et structures...
Calculs hautement non-linéaires
plasticité, endommagement non-local, contact, grands déplacements, etc.
Modèles implicites de très grandes dimensions
plus de 100 millions d'inconnues
Adaptivité, optimisation, stochastique
remaillage parallèle, réduction de modèle
Problématiques multiéchelles,
multiphysiques, dynamiques
Direction - Conférence
co-computation, flexibilité des interfaces
4
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Organisation de l'exposé
Introduction aux problématiques HPC
R. Poncet (CEA,CGG)
Évolution des moyens pour le calcul scientifique
La « Mine de Moore »
Développement d'algorithme et architecture matérielle
Calcul intensif dans Z-set/Zébulon
Approche multi-échelle Arlequin
J. Touzeau
Calcul couplé pour l'impact sur composites
T. Chantray et J. Rannou
Calcul à plusieurs niveaux de parallélisme
Direction - Conférence
F. Feyel
5
Conclusion
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Qu'est ce que le HPC ?
HPC – High performance computing
Résoudre votre problème rapidement
2 possibilités principales
Implémentation efficace sur le matériel « Hardware »
Modélisation numérique et algorithme (méthodes numériques)
Sujet 1 abordé dans cette introduction
Direction - Conférence
Sujet 2 en lien avec les applications matériaux et structure
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Vision d'un expert – Herb Sutter
Expert reconnu mondialement
sur l'architecture logicielle
Expert reconnu mondialement
sur le parallélisme
Travail chez Microsoft et dans le comité de la
norme ISO C++
Blogueur influent dans le monde informatique
Direction - Conférence
Deux papiers précurseurs
2004 : The free lunch is over
www.gotw.ca/publications/concurrency-ddj.htm
prevoyait l'arrivée du parallélisme dans
l'informatique « mainstream »
2011 : Welcome to the jungle
http://herbsutter.com/welcome-to-the-jungle
prevoyait l'arrivée du parallélisme hétérogène
hybride multi-niveaux dans l'informatique
« mainstream »
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Constat...
Les ordinateurs sont de plus en plus complexes
Les processeurs sont multicoeurs
Les cœurs possèdent eux-même une structure parallèle (ILP – parallélisme des
instructions) et hiérarchique (caches multi-niveaux)
SIMD – superscalaire plusieurs instructions exécutées en même temps
Exécution désordonnée (diminution des latences)
Exécution prédictive (branchements, etc)
Coprocesseurs spécialisés
Cartes graphiques et assimilées (GPGPU)
Direction - Conférence
Intel Xeon Phi
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Constat... (suite)
Depuis 2011, tous les ordinateurs sont multicoeurs
Supercalculteurs, ordinateurs de bureau, mais aussi tablettes, les smartphones, etc.
Est-ce une mode passagère ? Tout le monde doit-il apprendre à programmer sur ces
matériels ?
Quel est l'impact de cette évolution du « hardware » pour les chercheurs et ingénieurs
développeur de codes de simulation numérique ?
ou...
Direction - Conférence
Comment faire pour programmer efficacement cette génération de calculateurs et les
suivantes ?
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Loi de Moore
Loi empirique formulée en 1965
« Le nombre de transistors dans les microprocesseurs double tous les deux ans »
Moore : un des fondateurs d'intel
Loi exponentielle vérifiée depuis bientôt 50 ans (jusqu'à quand?)
Se base sur l'idée qu'un transistor est une source de puissance de calcul « brute »
La « mine » de Moore selon Sutter
Exploiter efficacement un matériel informatique équivaut à transformer des transistors
en puissance de calcul disponible
Soit : transformer de la puissance brute en performance logicielle
On peut comparer métaphoriquement cela à l'exploitation d'une mine
Son exploitation se traduit progressivement par une augmentation du coût pour un gain de
plus en plus faible...
Direction - Conférence
...jusqu'à ce qu'elle ne soit plus profitable
Cette image est valable pour le calcul haute performance !
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Retour sur 50 ans d'informatique
Phase I - exploitation de la « veine mère » de la loi de Moore
ie « unicore free lunch »
Les unités de traitement deviennent
de plus en plus complexes et rapides
La performances des codes évolue de
concert avec le « hardware »
Direction - Conférence
Point de rupture : environ 2005
(consommation énergétique et goulet
d'étranglement de l’accès mémoire)
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Puis tout est devenu plus compliqué...
Phase II (2005-2011) – veine secondaire (multi-coeur homogène)
La puissance brute continue à suivre la loi de Moore...
… sous une forme moins exploitable : avec un besoin de parallélisme
Phase III (2011-) - veine tertiaire (structure hétérogène)
architectures multicoeurs CPUs+(GPUs/Xeon Phi)
Direction - Conférence
deux types : gros&rapide vs petit&lent ou généraliste vs spécialisé
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Bilan
Le changement vers les architectures hétérogènes massivement multicoeurs semble acté :
il ne semble pas y avoir de retour en arrière possible à moyen terme
Le mono thread a atteint ses
limites : il ne permet plus
d'utiliser les ressources de
calcul disponibles
Il existe un fort besoin
pour le calcul parallèle
Direction - Conférence
Il faut faire progresser les
algorithmes de concert avec
les architectures
Aspects algorithmique et architecture matérielle imbriqués
applications aux problématiques matériaux et structures
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Organisation de l'exposé
Introduction aux problématiques HPC
R. Poncet
Évolution des moyens pour le calcul scientifique
La « Mine de Moore »
Développement d'algorithme et architecture matérielle
Calcul intensif dans Z-set/Zébulon
Approche multi-échelle Arlequin
J. Touzeau
Calcul couplé pour l'impact sur composites
T. Chantray et J. Rannou
Calcul à plusieurs niveaux de parallélisme
Direction - Conférence
F. Feyel
14
Conclusion
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calculateurs à architecture parallèle
Architectures
Cluster
SMP
Cluster de SMP
•
Exemple - Onera DMSM « petit » cluster
• 1000 cœurs hétérogènes (Intel,AMD)
• 4 To RAM
• 200 To DD
Direction - Conférence
• GPGPU Nvidia / Xeon phi
10 CG + 8 Tesla + 1 Xeon phi
V. Chiaruttini et al.
Red Storm
– Sandia
National Labs
HPC en mécanique
des matériaux
et structures
L'expérience Z-set/Zébulon
Organisation de l'exposé
Introduction aux problématiques HPC
R. Poncet
Évolution des moyens pour le calcul scientifique
La « Mine de Moore »
Développement d'algorithme et architecture matérielle
Calcul intensif dans Z-set/Zébulon
Approche multi-échelle Arlequin
J. Touzeau
Calcul couplé pour l'impact sur composites
T. Chantray et J. Rannou
Calcul à plusieurs niveaux de parallélisme
Direction - Conférence
F. Feyel
16
Conclusion
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Méthode Arlequin
Répartition des énergies
Z
¾(u1 ) : ²(v1 )d­ =
­1
Z
¾(u2 ) : ²(v2 )d­ =
­2
Z
Z
f1 :v1 d­ +
­1
Z
T1 :v1 dS
­1
­2
Direction - Conférence
Collage
17
●
Multiplicateurs de Lagrange :
●
Opérateur de couplage :
V. Chiaruttini et al.
¡T
f2 :v2 dS
¡
!0
u
C(¸; [[u]]) = K
!
¡
f1
¡T
Z
Sc
­2
¡u
¸
Sc
Pondération
®1 = 1
®2 = 1
®1 + ®2 = 1
[¸:[[u]] + l2 "(¸) : "([[u]])]d­
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
sur
sur
sur
­1 n­2
­2 n­1
­1 \ ­2
Mise en œuvre dans Z-set/Zebulon
Objectif
•Facilité
d'utilisation
➢ Mise en œuvre non intrusive
•Flexibilité
­1
­2
➢ Maillages incompatibles
Direction - Conférence
•Performance
18
➢ Choix de l'opérateur de couplage optimal
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
C(¸; [[u]])
ᄇ
Méthodes de résolution
Particularités du système linéaire
• Symétrique
• non
défini positif
Solveur direct
2
®:K1
4 0
C1
0
(1 ¡ ®):K2
¡C2
Solveur avec stratégie de pivotement partiel (ex : Mumps)
Solveurs itératifs de type Schur-Krylov
Utilisation des solveurs décomposition de domaine pour des interfaces
volumiques non conformes
Modèle 1
étant définis par
le maillage intermédiaire
u1
• Interfaces
Direction - Conférence
• Interfaces
19
conformes
Domaine 1
➔ Copie des interfaces sur chacun
des domaines
C
Glue
¸
C
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
CT
Domaine 2
u2
V. Chiaruttini et al.
CT
Modèle 2
C1T
¡C2T
0
3
5
Application à la simulation numérique
d'une aube multiperforée
Calcul mécanique sur une aube de turbine multiperforée
Problème simulacre Snecma
31 patchs Arlequin (259 000 ddl)
Simulation mécanique de forces centrifuges
Tête de l'aube
z
Évents de
refroidissement
y
!
¡
e2
Perçages
d'aération
Bord
de fuite
!
¡
e3
x
!
¡
e1
y
x
Direction - Conférence
Bord
d'attaque
20
Base de l'aube
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Perçages
d'aération
Application à la simulation numérique
d'une aube multiperforée
Direction - Conférence
Calcul mécanique sur une aube de turbine multiperforée
21
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Application à la simulation numérique
d'une aube multiperforée
Calcul mécanique sur une aube de turbine multiperforée
31 patchs
Direction - Conférence
Face arrière
22
Face avant
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Application à la simulation numérique
d'une aube multiperforée
Calcul mécanique sur une aube de turbine multiperforée
31 patchs
32 domaines (32 processeurs)
en 40 itérations pour une convergence à 10-8
Direction - Conférence
Face arrière
23
Face avant
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Organisation de l'exposé
Introduction aux problématiques HPC
R. Poncet
Évolution des moyens pour le calcul scientifique
La « Mine de Moore »
Développement d'algorithme et architecture matérielle
Calcul intensif dans Z-set/Zébulon
Approche multi-échelle Arlequin
J. Touzeau
Calcul couplé pour l'impact sur composites
T. Chantrait et J. Rannou
Calcul à plusieurs niveaux de parallélisme
Direction - Conférence
F. Feyel
24
Conclusion
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Introduction
Les composites et les impacts de faible énergie...
• Pourquoi construire un outil de résolution multiéchelle en espace et en temps?
Δtcrit< 10-8s
Simulations délicates sur des
structures complètes
[Lopez 2009]
25/16
Introduction
Approches multiéchelles en espace et en temps...
[C.Bouvet HDR 2009]
Direction - Conférence
[A.Gravouil et al, 2000]
[N.Mahjoubi et al, 2010]
Algorithmes explicites
Petit pas de temps
Gestion des fortes non-linéarités
26/16
V. Chiaruttini et al.
Interface peu
intrusive
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Algorithmes implicites
Grand pas de temps
Vérification de l'équilibre
Méthode multiéchelle en espace et en temps
Mise en œuvre
Peu intrusif
27/16
Minimisation des communications :
Résolution du problème d'interface dans le sous
domaine le plus fin en temps
Bascule implicite/explicite
28
Organisation de l'exposé
Introduction aux problématiques HPC
R. Poncet
Évolution des moyens pour le calcul scientifique
La « Mine de Moore »
Développement d'algorithme et architecture matérielle
Calcul intensif dans Z-set/Zébulon
Approche multi-échelle Arlequin
J. Touzeau
Calcul couplé pour l'impact sur composites
T. Chantray et J. Rannou
Calcul à plusieurs niveaux de parallélisme
Direction - Conférence
F. Feyel
30
Conclusion
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calcul massivement parallèle
Efficacité des méthodes de décomposition de domaine
Extensibles jusqu'à quelques centaines de cœurs
Architecture « multi-échelle » des calculateurs
Grappe de multicoeurs
Proximité / éloignement
Réseau lent (IB) / Réseau rapide (CB)
Architecture parallèle hybride
Décomposition de domaine avec des gros domaine
Solveur local parallèle par bloc
Dissection emboîté
Détection des modes rigides (noyau)
Direction - Conférence
Parallèlisme local par bloc (au niveau dense BLAS3)
Découpage naturel
Multithreading POSIX (dissection et factorisation)
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calcul massivement parallèle
Application
Cube en traction (bien conditionné mais remplissage important – interpolations
quadratique)
Code Zébulon : mécanique non linéaire des
matériaux & structures, C++, 700 000 lignes
En séquentiel :
Xeon Quad-Core X5460, 32 Go par noeud
(ONERA)
Direction - Conférence
En parallèle :
Cluster de noeuds bi-pro Quad-core Nehalem,
24 Go par noeud (CEA-CCRT)
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calcul massivement parallèle
Application
Cube en traction (bien conditionné mais remplissage important – interpolations
quadratique)
Efficacité du multithreading
Direction - Conférence
Pour 393 953 ddls
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calcul massivement parallèle
Application
Cube en traction (bien conditionné mais remplissage important – interpolations
quadratique)
Configuration
375 000 ddls par domaine en moyenne (saturer la mémoire des noeuds)
1 domaine par noeud
Dual pure (=FETI)
Direction - Conférence
8 threads par domaine (utilisation des 2 quad-core)
Et on augmente le nombre de domaines...
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Calcul massivement parallèle
Application
Cube en traction (bien conditionné mais remplissage important – interpolations
quadratique)
Direction - Conférence
Résultats
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon
Conclusion et perspectives
• Objectif
•
: exploiter des modélisations plus complexes et plus fines
HPC et calcul pour les matériaux et structures
Évolution des architectures matérielles
• Mono thread sans perspectives à moyen terme
• Adaptation des codes obligatoire pour les architectures parallèles hybrides
•
Direction - Conférence
• Couplage
36
de code, flexibilité, robustesse, performance, pérennisation
•
Evolution des algorithmes et matériels poussent vers des structures de code
modulaires
•
Intérêt significatif pour des accès via des langages de script évolués (type Python)
exploitant un parallélisme à gros grain et des objets standardisés
•
Utilisation massive de « briques » spécialisées pour l'exploitation de hardwares
spécifiques dans un environnement matériel hétérogènes
V. Chiaruttini et al.
HPC en mécanique des matériaux et structures
L'expérience Z-set/Zébulon