L'équipe crée des simulations de la structure de la Voie lactée
18 novembre 2014
par Katie Elyce Jones, Laboratoire national d'Oak Ridge
Si vous preniez aujourd’hui une photographie de la Voie lactée à distance, la photo montrerait une galaxie spirale avec une barre centrale brillante (parfois appelée renflement) de populations d’étoiles denses. Le Soleil, très difficile à voir sur votre photo, serait situé à l'extérieur de cette barre, près d'un des bras spiraux composés d'étoiles et de poussières interstellaires. Au-delà de la galaxie visible se trouverait un halo de matière noire, invisible pour votre appareil photo, mais néanmoins important car il maintient le tout ensemble en réduisant la vitesse de rotation de la barre et des bras spiraux.
Maintenant, si vous vouliez remonter le temps et prendre une vidéo de la formation de la Voie Lactée, vous pourriez remonter 10 milliards d'années en arrière, mais de nombreuses caractéristiques importantes de la galaxie ne seraient pas reconnaissables. Il faudrait attendre environ 5 milliards d'années pour assister à la formation du système solaire terrestre. À ce stade, il y a 4,6 milliards d’années, la galaxie ressemble presque à ce qu’elle est aujourd’hui.
"La grande structure de la galaxie est issue de l'auto-organisation de la distribution stellaire au cours des 10 derniers milliards d'années pour ressembler à la Voie lactée sur la photo", a déclaré Simon Portegies Zwart de l'Observatoire de Leiden aux Pays-Bas.
C'est la chronologie qu'une équipe de chercheurs des Pays-Bas et du Japon, dont Portegies Zwart, voit émerger lorsqu'ils utilisent des superordinateurs pour simuler l'évolution de la Voie lactée. Utilisant un code développé pour les architectures de supercalcul GPU, notamment celui du Cray XK7 Titan situé au laboratoire national d'Oak Ridge du ministère de l'Énergie, les simulations de l'équipe ont été acceptées comme finalistes du prix Gordon Bell. Le prix récompense des réalisations exceptionnelles dans le domaine du calcul haute performance et sera présenté par l'Association for Computing Machinery lors du SC14 le 20 novembre.
"Nous ne savons pas vraiment comment est née la structure de la galaxie", a déclaré Portegies Zwart. "Ce que nous avons réalisé, c'est que nous pouvons utiliser les positions, les vitesses et les masses des étoiles dans un espace tridimensionnel pour permettre à la structure d'émerger de l'autogravité du système."
Le défi du calcul de la structure galactique étoile par étoile réside, comme vous pouvez l’imaginer, dans le simple nombre d’étoiles dans la Voie lactée : au moins 100 milliards. Par conséquent, l’équipe avait besoin d’au moins une simulation de 100 milliards de particules pour relier tous les points. Avant le développement du code de l'équipe, connu sous le nom de Bonsai, la plus grande simulation de galaxie dépassait environ 100 millions, et non des milliards, de particules.
L'équipe a testé une première version de Bonsai sur Titan du Oak Ridge Leadership Computing Facility, le deuxième superordinateur le plus puissant au monde, pour améliorer l'évolutivité du code. Après avoir adapté Bonsai à près de la moitié des nœuds GPU de Titan, l'équipe a exécuté Bonsai sur le supercalculateur Piz Daint du Centre national suisse de calcul scientifique et a simulé la formation de galaxies sur 6 milliards d'années avec 51 millions de particules représentant les forces des étoiles et de la matière noire. Après une exécution réussie de Piz Daint, l'équipe est retournée sur Titan pour maximiser le parallélisme du code.
Le code Bonsai a démontré une évolutivité sur 18 600 nœuds Titan (96 % des nœuds GPU de la machine), ce qui permettrait une simulation de la Voie Lactée sur 8 millions d'années et 242 milliards de particules. Bonsai a atteint près de 25 pétaflops de performances soutenues en virgule flottante en simple précision sur Titan. Les opérations à virgule flottante simple précision utilisent moins de mémoire en représentant des nombres à l'aide de 32 bits, tandis que les opérations à double précision représentent des nombres plus précis au détriment de l'utilisation de 64 bits.
"Avec l'étudiant diplômé Jeroen Bédorf, nous avons commencé par écrire du code unique pour les GPU et délibérément jamais écrit de code sur les CPU parce que nous voulions que l'intégralité du code s'exécute sur les GPU pour exploiter leur parallélisme", a déclaré Portegies Zwart. "Les processeurs hôtes ne sont utilisés que pour rationaliser la communication entre les nœuds et les GPU. De cette façon, nous pouvons optimiser pleinement l'utilisation des GPU pour le calcul des nombres et des processeurs beaucoup plus lents pour minimiser les frais de communication."