Projet MetaLSpectral
Y. Ponty, A. Miniussi (OCA)

jeudi 19 janvier 2012 par Ponty Yannick

traduction [English ] [français ]

Notre équipe composée de physiciens et d’informaticiens veux construire une bibliothèque en
C + + qui permettra de résoudre de nombreux problèmes de physique, en simulant des équations différentielles partielles (PDE) avec des méthodes pseudo-spectrales dans différentes géométries (cube périodiques, plaque, un tore ou une sphère). Cette bibliothèque sera offert à la communauté scientifique et nous espérons commencer une synergie, où les utilisateurs pourraient développer leurs propres outils et d’augmenter la gamme de module de la bibliothèque SpecTLib. Elle permettra d’effectuer des calculs intensifs sur tout type d’architecture allant du simple ordinateur portable au calculateur Petaflopiques.
La construction d’outils permettant une bonne utilisation des machines massivement parallèles devient une priorité, mais nécessite un investissement récurrent. Notre outil pourra s’adapter sans tout recommencer, a une multitude d’architectures présentes et même futures.

Cette bibliothèque sera facile à utiliser et à mettre en œuvre. Les utilisateurs n’auront pas besoin d’entrer dans les détails de la parallélisation MPI et multi-thread. Les objets (des champ scalaires et vectoriels) construits avec leurs opérateurs mathématiques seront le cœur de SpecTLib. Les utilisateurs devront simplement coder leurs schémas temporels et leur système PDE, des exemples seront fournis.
Une optimisation automatique suivant l’architecture de l’ordinateur sera incluse à un bas niveau de la bibliothèque. Une structure suffisamment générique des objets permettra cette dissociation entre optimisation et implémentation.

Le nombre de sujets traités par les méthodes spectral et les géométrie proposée sont vastes.
Par exemple, en hydrodynamique, à très haute résolution nous serons en mesure d’atteindre le régime turbulent produit par l’instabilité convective, des rotation élevés, MHD, géodynamo, scalaire passif, et la liste est loin d’être exhaustive. Avec l’utilisation de "MetaLSpectral", nous serons en mesure d’utiliser des ordinateurs hautement parallèles, atteignant des phénomènes fortement non linéaires, les résultats auront une incidence sur un large éventail de domaines scientifiques comme des questions de l’environnement (polluants), les applications géophysiques et astrophysiques.

Nous proposons de construire une bibliothèque ayant les propriétés suivantes :
* Les géométries comme la boite périodique, une plaque, un tore et la sphère seront implémentées.
* La transformé de Legendre-Fourier pour les harmoniques sphériques, sera optimisée avec un nouvel algorithme mixe supportant le calcul multi-thread.
* Cette bibliothèque sera conçue afin de travailler et d’optimiser ces performances sur les ordinateurs petaflopiques.
* La bibliothèque MPI distribuées et multi-thread seront mixées, ainsi que le support sur GPU.
*Nous proposons une optimisation automatique pour s’adapter à la taille et l’architecture de l’ordinateur (arbre de décision et de dépendance).
*Notre bibliothèque comprendra des diagnostics « à la volée », capable de réduire la quantité de données, qui sont impossibles à sauver, notamment avec une transformation en ondelette et une sélection énergétique des structures des champs calculés.
*Nous proposons un modèle de classe pour la construction de la boucle du programme principale.
*Une interface sera conçus pour envoyer des données dans des modules de diagnostic avancé ou d’autres codes (ie trajectoires lagrangiennes, visualisation ...).
*Une interface python de la bibliothèque sera construite pour effectuer des commandes interactives ou dans un script python
*La bibliothèque sera sous la supervision de « subversion » (logiciel de contrôle de version) et « trac » (système de suivi de projets) pour rapporter les bugs et les améliorations.
*Après la fin de la période de beta-test, la bibliothèque sera un projet open source sous le contrôle de la licence CeCILL (www.cecill.info) (équivalent de la licence GPL en France).

 
Articles publiés dans cette rubrique