LESIA - Observatoire de Paris

Simulations numériques efficaces pour l’optique adaptative

Projet COMPASS

jeudi 1er octobre 2015, par D. Gratadour

Les simulations Monte Carlo dites bout-en-bout sont largement utilisées dans la communauté de l’instrumentation pour prédire la performance des systèmes, pour tester de nouveaux concepts et valider leurs comportements ou pour mener des études de compromis technologique pour leur conception. Ces simulations intensives multi-physiques impliquent des algorithmes complexes basés sur l’utilisation d’une variété de bibliothèques mathématiques (générateurs de nombres aléatoires, transformée de Fourier, librairies de routines BLAS et LAPACK).

Une approche innovante, apparue depuis moins d’une dizaine d’années dans le domaine du calcul haute performance, consiste à utiliser des accélérateurs matériels tels que des processeurs graphiques reprogrammables (GPU) pour s’affranchir des limitations de l’architecture X86 et maximiser à la fois le ratio puissance de calcul / coût et le ratio puissance de calcul / énergie nécessaire. Avec l’émergence du concept de GPGPU (General Purpose GPU computing), il est maintenant possible, avec un minimum d’effort, d’exécuter du code générique sur cette architecture massivement parallèle. Les GPU offrent une solution peu onéreuse pour construire des grappes de calcul massivement parallèles afin de résoudre des problèmes calculatoires de grandes échelles de manière efficace.

Nous avons proposé de mettre en oeuvre une plateforme de développement numérique pour l’optique adaptative (OA) : COMPASS, incluant :

  • Un outil de simulation de bout-en-bout à pleine échelle de l’OA pour différents dimensionnements ;
  • Un noyau temps réel optimisé pouvant être directement intégré dans un système réel ;
  • Un prototype de système d’acquisition à faible latence.

Le développement de cette plateforme est basé sur une intégration complète du logiciel avec le matériel et s’appuie sur une migration optimisée de la simulation vers une architecture hétérogène utilisant les GPU comme accélérateurs. Les axes de recherche sont multiples : modélisation de l’OA, contrôle temps-réel en boucle ouverte ou fermée, acquisition d’images à faible latence et science avec OA dans le contexte de l’instrumentation de l’E-ELT. La collaboration mise en place est pluridisciplinaire alliant spécialistes de l’astrophysique, de l’instrumentation pour les grands télescopes et du calcul haute performance.

Le projet débuté en mars 2013 fédère le travail des équipes de six laboratoires partenaires en France et a été financé par l’ANR. L’approche pluridisciplinaire qui est suivie a permis de produire des résultats intéressants le long des différents axes de recherche du projet, comme le montre les différents travaux publiés menés avec la plateforme (Clénet et al. 2015, Carlotti et al. 2014 ; Gratadour et al. 2014 ; Vidal et al. 2014 ; Baudoz et al. 2014 ; Sevin et al. 2014 ; Gendron et al. 2014 ; Gratadour et al. 2013 ; Clénet et al. 2013).

Au-delà de la simulation de l’OA un travail de définition précise de l’interface entre un simulateur d’observations et la simulation d’OA est mené ainsi qu’un premier travail d’exploitation scientifique de la plateforme compète (de l’objet astrophysique aux résultats scientifiques) à travers l’étude de différents cas scientifiques comme l’observations de noyaux actifs de galaxies.

Panneau de contrôle du logiciel de simulation OA COMPASS

La plateforme est aujourd’hui dotée de nombreuses fonctionnalités permettant de simuler une OA classique sur étoile naturelle aussi bien qu’une OA tomographique multi-laser sur différentes échelles de télescopes et avec une efficacité démontrée (5 à 10 fois plus rapide qu’un outil comme YAO largement utilisé dans la communauté). Elle a été testée par les partenaires du projet mais aussi par des équipes extérieures en Europe et a prouvé sa fiabilité et son efficacité.

Au-delà de l’exploitation de la plateforme qui a déjà commencé, la suite du projet s’oriente vers le développement d’un mode distribué afin de pouvoir exécuter des simulations sur des grappes de calcul équipées de GPU et ainsi atteindre les plus grandes échelles de systèmes en minimisant le temps de simulation. Un travail important doit être mené sur l’optimisation du code afin de le rendre adaptable à l’évolution des architectures et de minimiser son empreinte mémoire tout en maximisant les performances. Une interface utilisateur dans un langage très populaire comme Python est aussi en cours de développement et devrait permettre une adoption plus rapide par la communauté. L’objectif est de faire de cette plateforme de simulation un outil standard pour le développement des télescopes à diamètres extrêmes.