Integration of High-Performance Task-Based In Situ for Molecular Dynamics on Exascale Computers
Développement d'un système in situ à base de tâches pour un code de dynamique moléculaire classique adapté aux machines exaflopiques
Résumé
The exascale era will widen the gap between data generation rate and the time to manage their
output and analysis in a post-processing way, dramatically increasing the end-to-end time to
scientic discovery and calling for a shift toward new data processing methods. The in situ
paradigm proposes to analyze data while still resident in the supercomputer memory to reduce
the need for data storage. Several techniques already exist, by executing simulation and analytics
on the same nodes (in situ), by using dedicated nodes (in transit) or by combining the two
approaches (hybrid). Most of the in situ techniques target simulations that are not able to fully
benet from the ever growing number of cores per processor but they are not designed for the
emerging manycore processors. Task-based programming models on the other side are expected
to become a standard for these architectures but few task-based in situ techniques have been
developed so far.
This thesis proposes to study the design and integration of a novel task-based in situ framework
inside a task-based molecular dynamics code designed for exascale supercomputers. We
take benet from the composability properties of the task-based programming model to implement
the TINS hybrid framework. Analytics workows are expressed as graphs of tasks that can
in turn generate children tasks to be executed in transit or interleaved with simulation tasks in
situ. The in situ execution is performed thanks to an innovative dynamic helper core strategy
that uses the work stealing concept to nely interleave simulation and analytics tasks inside a
compute node with a low overhead on the simulation execution time.
TINS uses the Intel® TBB work stealing scheduler and is integrated into ExaStamp, a taskbased
molecular dynamics code. Various experiments have shown that TINS is up to 40% faster
than state-of-the-art in situ libraries. Molecular dynamics simulations of up to 2 billions particles
on up to 14,336 cores have shown that TINS is able to execute complex analytics workows at a
high frequency with an overhead smaller than 10%.
L’ère de l’exascale creusera encore plus l’écart entre la vitesse de génération des données de simulations
et la vitesse d’écriture et de lecture pour analyser ces données en post-traitement. Le
temps jusqu’à la découverte scientique sera donc grandement impacté et de nouvelles techniques
de traitement des données doivent être mises en place. Les méthodes in situ réduisent
le besoin d’écrire des données en les analysant directement là où elles sont produites. Il existe
plusieurs techniques, en exécutant les analyses sur les mêmes noeuds de calcul que la simulation
(in situ), en utilisant des noeuds dédiés (in transit) ou en combinant les deux approches (hybride).
La plupart des méthodes in situ traditionnelles ciblent les simulations qui ne sont pas capables
de tirer prot du nombre croissant de coeurs par processeur mais elles n’ont pas été conçues pour
les architectures many-coeurs qui émergent actuellement. La programmation à base de tâches est
quant à elle en train de devenir un standard pour ces architectures mais peu de techniques in situ
à base de tâches ont été développées.
Cette thèse propose d’étudier l’intégration d’un système in situ à base de tâches pour un code
de dynamique moléculaire conçu pour les supercalculateurs exaopiques. Nous tirons prot des
propriétés de composabilité de la programmation à base de tâches pour implanter l’architecture
hybride TINS. Les workows d’analyses sont représentés par des graphes de tâches qui peuvent
à leur tour générer des tâches pour une exécution in situ ou in transit. L’exécution in situ est
rendue possible grâce à une méthode innovante de helper core dynamique qui s’appuie sur le
concept de vol de tâches pour entrelacer ecacement tâches de simulation et d’analyse avec un
faible impact sur le temps de la simulation.
TINS utilise l’ordonnanceur de vol de tâches d’Intel® TBB et est intégré dans ExaStamp, un
code de dynamique moléculaire. De nombreuses expériences ont montrées que TINS est jusqu’à
40% plus rapide que des méthodes existantes de l’état de l’art. Des simulations de dynamique
moléculaire sur des système de 2 milliards de particles sur 14,336 coeurs ont montré que TINS est
capable d’exécuter des analyses complexes à haute fréquence avec un surcoût inférieur à 10%.
11
Origine : Fichiers produits par l'(les) auteur(s)
Loading...