Modélisation de la combustion en chimie complexe : le...

Preview:

Citation preview

Modélisation de la combustion en chimiecomplexe : le défi des architectures

massivement parallèles

S. Descombes 2 M. Duarte 3 T. Dumont 1 V. Louvet1 M. Massot 3

1Institut Camille Jordan - CNRS & Université Claude Bernard Lyon 1 - France2Laboratoire J. Dieudonné, Université Nice-Sophia Antipolis - France

3Laboratoire EM2C - Ecole Centrale Paris - France

GTN Orsay - 23 mars 2011

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Simulation numérique de phénomènes réactifsinstationnaires

I Amélioration des performances des moteursI Dynamique des flammes :

• allumage• extinction• polluants

I Mélange réactifs pauvres : moins de combustible, plusd’oxydants• moins de polluants• meilleure efficacité• plus d’instabilités

Limites des stratégies actuellesI Utilisation de cinétique chimique détaillée sur des cas

réalistes inaccessiblesI Utilisation de méthodes de tabulation (ISAT, FPI)I Cinétique simplifiée insuffisante pour simuler de façon

précise les phénomènes où l’aspect multi-échelle estessentiel: pas de capture des effets instationnaires,d’allumage ou d’extinction

Vers la chimie complexe

I Schéma cinétique détaillé: permettent d’avoir la bonnecomposition et la bonne vitesse de flamme

Flamme prémélangée

Difficultés à surmonter en chimie complexeI Raideur spatiale

I Résolution d’une très large gamme d’échellesI Les taux de production varient très fortement d’une espèce

à l’autre dans le front de flamme (facteur 1030)I Nombre de variables à traiter: résolution d’EDP portant sur

des dizaines d’espèces, prise en compte de centaines deréactions.

Difficultés liés aux infrastructures de calculI Beaucoup de coeurs:

I Fréquence d’horloge en baisse à cause du problème de laconsommation électrique et du dégagement de chaleur:coeur moins rapide

I Mémoire par coeur en baisse

I Différent types de coeurs:I architecture hétérogène, hybrideI le CPU s’accompagne de nombreux coeurs de conception

différentes : les GPU

Adéquation méthodes numériques - algorithmes -architectures

Conception et adaptation nécessaires des méthodesnumériques et des algorithmes que l’on souhaite utiliser:

→ Adapté à la physique du problème: raideur, complexité dumodèle, ...

→ Adapté aux architectures machines envisagées: simulationde cas réalistes

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Modélisation simplifié de la combustionModélisation des phénomènes multi-échelles par des systèmesde réaction-diffusion:

∂tu− ∂x (D(u)∂xu) = f(u), x ∈ Rd , t > 0,

u(0,x) = u0(x), x ∈ Rd ,

Sous forme semi-discrète:

dUdt− BU = F(U), t > 0,

U(0) = U0,

Hypothèses:

I Diffusion homogèneI Enthalpie constante

Chimie Complexe∑k∈[1,nk ]

ν ′kiSk ∑

k∈[1,nk ]

ν ′′kiSk i ∈ R = [1,nR]

Modèle adimensionné:∂τYk − ∂xxYk =

L2

D0

Wk wk

ρ

∂τYk (0) = Y 0k

I Yk : fraction massique de la keme espèceI L : longueur de diffusionI D0 : coefficient de diffusion homogèneI Wk : masse molaire pour l’espèce kI wk : taux de production de la keme espèce, dépendant de

façon fortement non linéaire des YkI ρ : densité

Terme de réactionwk =

∑k∈[1,nk ]

(ν ′′ki − ν ′ki)τi

I τi : taux d’avancement de la ieme réactionI Loi d’action de masse:

τi = Kfi (T )[∏

k∈[1,nk ]

X ν′kik −

1Kei (T )

∏k∈[1,nk ]

X ν′′kik ]

I Kfi (T ) : taux de réaction direct, donné de manièreempirique par une loi d’Arrhenius:

Kfi (T ) = AiT βi exp−Ei

RTI Xk : fraction molaire de l’espèce kI Kei (T ) constante d’équilibre de la réaction i :

Kei (T ) = exp[−∑

k∈[1,nk ]

νkiFk (T )]

où Fk (T ) est le paramètre d’énergie libre.

Evaluation des données de chimieMécanismes du calcul de chimie:I Base de données thermodynamique associé au

mécanisme chimique souhaitéI Interprèteur qui calcule les propriétés thermodynamiques

du mécanisme réactionnelI Bibliothèque de sous-programmes pour le calcul des

différents éléments du terme de réaction:→ Chemkin II, code historique, développé depuis près de 30

ans, à l’origine par le Sandia National Laboratory, puis parla société ReactioDesign qui le commercialise

→ Cantera, code récent, open source, en C++, pas dedéveloppement en cours

Besoins concernant les routines de chimie:→ Efficaces, adaptées, opensource (intégration dans un code

opensource : problème de contamination des licences)→ Nécessité de les réimplémenter

Caractéristiques du modèle à prendre en compte

I Nombre élevé d’espèces et de réactions en jeu : desdizaines d’espèces chimiques, des centaines de réactionsdans les mécanismes considérés

I Aspect fortement multi-échelles des phénomènesI Raideur spatiale importanteI Calcul des termes de chimie extrêmement coûteux :

I obtenus à partir d’exponentiels, de logarithmes, depolynômes ...

I calcul de la température via un newtonI Diffusion faible donc les valeurs propres de l’opérateur

sont réelles négatives de taille raisonnableI Localité des opérateurs:

I localité en espèces pour la diffusion qui opère espèce parespèce

I localité spatiale pour la réaction qui opère point par point

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Stratégies possiblesI Résolution du système complet réaction-diffusion:

I Méthode implicite, semi-implicite: coût computationel etbesoins en mémoires importants

I Utilisation de méthodes combinant des schémas impliciteset explicites : méthodes IMEX. Problème de la taillemémoire pour la partie implicite sur un domaine grand,problème de la restriction du pas de temps pour la partieexplicite.

I Si les échelles rapides ne jouent pas un rôle trop importantdans la physique du phénomène : utilisation de modèlesréduits où les échelles chimiques sont relaxées. Il fautpouvoir identifier les échelles rapides, ce qui n’est pas notrecas.

I Splitting d’opérateurs, méthodes utilisées depuislongtemps pour résoudre ce type de problème:

I permet d’utiliser des solveurs dédiés pour chacun desopérateurs

I existence de méthodes de splitting d’ordre élevé

Méthodes de splitting

U(t) = T tU0

∂tU −∆U = Ω(U)

U(0) = U0

Système splitté en 2 blocs élémentaires:

V (t) = X tV0

∂tV −∆V = 0

V (0) = V0

W (t) = Y tW0

∂tW = Ω(W )

W (0) = W0

On s’intéresse à l’utilisation des ces méthodes dans le cadrede la résolution de systèmes de réaction-diffusion raides.

Méthodes de splitting II

Méthode du 1er ordre, formalisme de Lie :

Lt1 U0 = X t Y t U0 Lt

1 − T t = O(t2),

Lt2 U0 = Y t X t U0 Lt

2 − T t = O(t2),

Méthode du 2nd ordre, formalisme de Strang :

St1 U0 = Y t/2 X t Y t/2 U0 St

1 − T t = O(t3),

St2 U0 = X t/2 Y t X t/2 U0 St

2 − T t = O(t3),

Convergence dans le cas raideI Réduction d’ordre à cause des échelles rapides (voir

référence [2])I Réduction d’ordre dûe aux gradients en espace très élevés

(voir référence [7])

Comportement de l’erreur:I Dans le cas d’échelles rapides, erreur locale pour les

formalismes de Lie et de Strang:

‖EL(t)U0‖2 ≤(

CL0 t2

2+

CL1 t√

t

3√

2e

)‖U0‖2

‖ES(t)U0‖2 ≤(CS0 + 2CS1) t3

12+

CS2 t2√

t

15√

2e+

CS3α t√

t4

I Dans le cas de gradients en espace élevé, pour leformalisme de Lie, ∃ une constante explicite θ > 0dépendante de ‖U0‖H1 telle que pour t ≤ θ, ‖EL(t)U0‖2 secomporte en t2 et pour t ≥ θ, ‖EL(t)U0‖2 se comporte ent√

t .

Méthodes numériques adaptéesI Splitting de Strang : RDR ([2]).I Intégration en temps de la partie réactive : Radau5.

• Méthode A-stable et L-stable• Stratégie d’adaptation du pas de temps pour assurer la

précision de l’intégration numérique• Méthode d’ordre élevé (formellement d’ordre 5, qui peut

être réduit à 3 dans le pire des cas) : l’erreur de l’intégrationen temps est bornée par celle de la méthode de splitting

• Schéma de Runge-Kutta implicite : résolution de systèmesnon linéaires au cours du processus d’intégration : pb ducoût calcul et mémoire. Dans notre cas, résolution desystèmes locaux de petite taille.

I Intégration de la partie diffusive : Rock4.• Méthode explicite : pas de résolution de système linéaire,

uniquement des produits matrices-vecteurs.• Le coût est lié directement à la quantité de produits

matrice-vecteur, et donc au nombre d’étapes s à chaquepas de temps de la méthode.

Méthodes numériques adaptées III Rock4:

• Les besoins en mémoire sont directement liés à la taille dumaillage.

• ROCK4 est une méthode de Runge-Kutta explicitestabilisée avec un domaine de stabilité le long de l’axe réelnégatif.

• Méthode appropriée à nos pbs de diffusion à cause de laprédominance de valeurs propres réelles négatives de tailleraisonnable pour lesquelles la méthode est stable.

• Dans notre cas, phénomène de diffusion = propagationdes perturbations autour des équilibres partiels résultantsdes schémas réactifs. Caractère auto-similaire qui impliqueun nombre d’étape pratiquement constant au cours del’évolution.

• Méthode d’ordre élevé (ordre 4)I L’analyse sur l’erreur théorique du schéma de splitting

reste valide : les échelles de temps de la réaction et de ladiffusion sont correctement résolues au regard des erreursde l’intégration en temps du splitting.

Adéquation méthodes numériques - architecturesmatérielles

I Localité des opérateurs

• parallélisation explicite de la réaction sur l’ensemble despoints.

• parallélisation explicite de la diffusion sur l’ensemble desespèces

I Méthode explicite sur la diffusion• Décomposition de domaine avec très peu de

communicationsI Adaptation aux architectures :

• Parallélisation massive : bonne exploitation des capacitésdes machines actuelles

• Besoin en mémoire à répartir sur tous les noeuds :maillage de grande taille accessible

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Coût de la réaction

I Coût de la partie réactive très largement supérieur au coûtde la partie diffusive

Choix technologiques pour l’implémentationI Distribution du domaine en sous-domaine : MPII Parallélisme massif sur tous les points du maillage pour la

partie réactive, la plus coûteuse : exploiter au mieux lesaspects multicoeurs −→ openMP

Hybride MPI + openMP le plus adapté

Simulations numériques sur architectures classiquesDescription du cas test

I Schéma réactionnel méthane-air:

• 49 espèces• 299 réactions

I Cas 2D de flamme en V

Résultats sur machine à mémoire partagéeI Maillage 32x32, machine SMP : scalabilité forte (on

augmente le nombre de process mpi sans changer lemaillage), 1 seul thread openmp• Ecart au speedup optimal à cause de la taille du maillage

(trop petite)• L’utilisation de quelques threads openMP (optimalement 8,

machine 2 x hexa-sockets à 8 coeurs) permet d’améliorerla performance.

Résultats sur machine à mémoire distribuéeI Maillage 256x256, cluster de machines SMP : scalabilité

forte, 1 seul thread openmp• On peut améliorer la scalabilité en choisissant

correctement le nombre de threads openMP en fonction del’architecture des machines (notamment par rapport aunombre de coeurs par socket).

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Choix des architectures ciblesI Choix actuels en terme d’infrastructures hautes

performances :• Cluster de machines SMP, le plus classique• Machines dédiéesmassivement parallèles• GPU, architecture émergente ?

I S’adapter aux contraintes :• Des milliers de threads/processus potentiels• Peu de mémoire disponible par threads/processus• Mémoire NUMA• Réseaux hétérogènes

Caractéristiques de la Blue Gene/PI 10240 nœuds.I 40960 cœurs.I 139 TFlops.I Cœur : PowerPC 450 32 bit, 850 MHz.I Mémoire par nœud : 2 Go (512 Mo par cœur).I Cache L1 32ko + 32ko, L2 privé, L3 partagé.I 1 nœud d’IO tous les 64 compute nodes.

Caractéristiques de la Blue Gene/P II6 réseaux, dont 3 pour MPI :I Tore 3D : chaque nœud connecté à ses 6 voisins, latence

MPI de 3 à 10 µs, optimisé pour les communications pointà point et multicast.

I Réseau collectif : connections en arbre, sert aux IO,optimisé pour les communications collectives.

I Barrières : faible latence pour barrières et interruptions.I 10 Gb ethernet : nœud d’IO vers GPFS.I JTAG : réseau de service.I Clock : réseau de synchronisation des nœuds.

Problématiques de portage

I Réservation minimale : 64 Compute Node = 256 cœurs.I Faible mémoire par cœur (512 Mo) / Plusieurs modes

d’exécution (4, 2 ou 1 processus MPI par nœud.I L’implémentation MPI (basé sur MPICH2) prend en compte

les spécificités de la machine. Mais : il faut être vigilant surle recouvrement calcul/communication, l’utilisation desdifférents réseaux, le placement des processus sur le tore3D ...

I Ne pas être trop dépendant de bibliothèques externes(exemple du problème de la version de lapack installée)

I Problématique du debuggage, nécessite uneconnaissance approfondie de la machine, des options ducompilateur ...

Simulations numériques

I Même cas test que précédemment.I Maillage 512x512 : le plus gros raisonnable (temps de

calcul limité sur Blue Gene)

Vers le GPU

I Les raisons de l’engouement actuel:X Performance théorique GeForce 8800 vs Intel Core 2 Duo

3.0 GHz : 367 GFlops / 32 GFlops. En théorie, une énormepuissance de calcul dans un PC de bureau !

X Présents dans tous les PC : un marché de masse.X Adapté au massivement parallèle (milliers de threads par

application).X Jusqu’à récemment, uniquement programmable via des

APIs graphiques. Aujourd’hui, des modèles deprogrammation disponibles : CUDA (Compute UnifiedDevice Architecture).

I Les problèmes propres aux GPU :X Jusqu’à récemment, support de la simple précision.X Emergence d’un standard : openCL. Trop récent ?X Architecture très particulière : réflexion sur l’adéquation

méthodes numériques/architecture encore plus importanteX Coût très limitant des échanges mémoires CPU-GPU

Caractéristiques des GPU

Premières simulations sur GPU

I Constats:• Un rapide profiling du code indique que la majorité du

temps de calcul se passe dans le calcul du taux de réaction• Faire porter l’effort d’optimisation sur cette partie• Déporter ce calcul sur le GPU : calcul purement local, très

parallélisableI Problèmes rencontrés:

• Calcul de wk nécessite de mettre en mémoire du GPUl’ensemble des données de chimie : problème de la placenécessaire sur le GPU, à mettre dans une mémoire globalela moins couteuse possible : mémoire des textures.

• Problème de la précision des calculs• Problème de l’optimisation de l’implémentation : on arrive

assez vite à quelque chose de très décevant ...

Sommaire

Contexte et Motivations

Modélisation de la combustion en chimie complexe

Stratégie numérique

Simulations numériques

Architectures massivement parallèles

Conclusions et Perspectives

Conclusions

I But : calcul de combustion en chimie complexeI Configuration avecmécanisme réactionnel réaliste 2D et

3DI Utilisation de méthodes numériques adaptées au problème

physique en adéquation avec les architectures viséespermettant d’accéder à ses configurations

I Lien fort méthodes numériques / Algorithmes / hardI Performances intéressantes sur infrastructures

massivement parallèles

Perspectives

I Travail sur les méthodes numériques:• Pas de temps adaptatif pour le splitting• Intégration de la convection• Travail en cours en parallèle sur la multirésolution

I Aspects technologiques:• Poursuivre le travail de portage de la bibliothèque de chimie

sur le GPU• Réflexions en cours sur la parallélisation de la

multirésolution

References I

S. Descombes, T. Dumont, M. MassotOperator splitting for nonlinear reaction-diffusion systems with anentropic structure : singular perturbation, order reduction andapplication to spiral wavesProceeding of the Workshop “Patterns and waves : theory and applications”,Saint-Petersbourg (2003)

S. Descombes and M. MassotOperator splitting for nonlinear reaction-diffusion systems with anentropic structure : singular perturbation and order reductionNumerische Mathematik (2004)

C. Besse, B. Bidégaray, S. DescombesOrder estimates in time of splitting methods for the nonlinearSchrödinger equationSIAM J. Numer. Anal. (2002)

M. MassotSingular perturbation analysis for the reduction of complexchemistry in gaseous mixtures using the entropic structureDCDS - B (2002)

References II

V. Giovangigli and M. MassotMulticomponent reactive flows : reduced chemistry and entropicstructure on partial equilibrium manifoldsM2AS (2004)

S. Descombes and M. MassotOn the local error of splitting approximations of reaction-diffusionequationsPreprint (2006)

S. Descombes, T. Dumont, M. Massot, V. Louveton the local and global errors of splitting approximation ofreaction-diffusion equations with high spatial gradientsInternational Journal of Computer Mathematics (2007)

S. Descombes, T. Dumont, J. Beaulaurier, M. Massot, F. Laurent-Nègre, V. Louvet

Operator splitting techniques for multi-scale reacting waves andapplications to low mach number flames with complex chemistry: theorical and numerical aspectesForthcoming paper

References III

M. Duarte, M. Massot, S. Descombes, C. Tenaud,T. Dumont, V. Louvet, F.LaurentNew resolution strategy for multi-scale reaction waves using timeoperator splitting, space adaptive multiresolution and dedicatedhigh order implicit/explicit time integratorsForthcoming paper

GrantI ANR Séchelles 2009-2012 (S. Descombes)I PEPS Maths ST2I (Projet Exploratoire Pluridisciplinaire)

2009-2010 (V. Louvet)I PEPS (Projet Exploratoire Pluridisciplinaire) 2007-2008

(Frédérique Laurent, Anne Bourdon)I Young Investigator Award (S. Descombes, M. Massot)

“New Interfaces of Mathematics”,French Ministry of Research 2003-2006

Recommended