Informations générales
Entité de rattachement
Situé à 40 km au sud de Paris, le centre DAM-Île de France, a en charge la conception des armes nucléaires françaises, la recherche et développement dans le domaine de la lutte contre la prolifération et le terrorisme, l'alerte aux autorités en cas de séisme, de tsunami ou d'essai nucléaire étranger, la construction et le démantèlement de grandes infrastructures nucléaires. Leader français de la simulation numérique et du calcul intensif, il possède deux des machines européennes les plus puissantes. Il dispose également de plusieurs accélérateurs et de nombreux moyens techniques et expérimentaux pour mener ses recherches. Lui est également rattaché, l'Unité Propulsion Nucléaire située sur le centre CEA/Cadarache en région Provence Alpes-Côte d'Azur, où sont implantées les installations d'essais et une partie des fabrications de la propulsion nucléaire.
Référence
2021-18592-S0428
Description du poste
Domaine
Mathématiques, information scientifique, logiciel
Contrat
Stage
Intitulé de l'offre
Mini application de transport de particules Monte-Carlo en Rust
Sujet de stage
Mini application de transport de particules Monte-Carlo en Rust
Durée du contrat (en mois)
6 mois
Description de l'offre
Avec des besoins en simulation numérique grandissants, les supercalculateurs sont en constante évolution. On assiste à une augmentation significative du nombre d'unités d'exécution par nœud de calcul, allant ainsi vers des architectures dites massivement parallèles. Les accélérateurs de calculs de type GPU sont également utilisés afin d'augmenter la puissance de calcul des machines actuelles, réduisant au passage leur empreinte énergétique. Avec la cohabitation de deux architectures distinctes au sein d'un même noeud, on parle alors d'architecture de calculateur hétérogène. Cependant, la programmation efficace de tels systèmes est difficile. Plusieurs modèles de programmation ont émergé, mais aucune des solutions proposées ne s'est vraiment imposée comme un standard pour ce type de machines. Afin de voir le potentiel de ces technologies et leur utilisation dans des codes de calculs conséquents leurs évaluations sur une mini application type est nécessaire.
Danc ce cadre une mini application de transport Monte Carlo à été développée avec différentes technologies dont Rust. Le stage consiste à s'approprier et à améliorer cette mini-application.
S'approprier la mini application Rust, en faisant des relevés de performances, en particulier celles concernant le passage à l'échelle.
Etudier et proposer un modèle de parallélisation mémoire partagée par tâches.
Implanter une version parallèle de l'algorithme par tâches.
Implanter une version parallèle utilisant des communications explicites (canaux de communication Rust).
Etudier l'extension des communications explicites à l'utilisation d'une bibliothèque de communication en mémoire distribuée comme MPI.
Profil du candidat
Rust, programmation parallèle, C
Bac+5
Localisation du poste
Site
DAM Île-de-France
Localisation du poste
France, Ile-de-France, Essonne (91)
Ville
Bruyères-le-Châtel