Categories
highlight job

[JOB] PhD. 👩‍💻🧑‍💻 – Multigrid algorithms tuning using AI for the solution of linear systems

Etablissement : Université Paris-Saclay GS Ingormatique et sciences du numérique
École doctorale : Sciences et Technologies de l’nformation et de la Communication
Spécialité : Informatique mathématique
Unité de recherche : Mdls – Maison de la Simulation

Encadrement de la thèse : Nahid EMAD PETITON
Co-Directeur : Thomas DUFAUD

Description de la problématique de recherche – Project description

La performance des simulateurs a un impact direct à la fois sur la qualité des résultats de simulation, avec la précision souhaitée et sur la capacité d’explorer une grande variété d’hypothèses scientifiques. Dans un grand nombre de simulateurs numériques, la résolution de systèmes linéaires, très souvent mal conditionnés, constitue l’étape la plus consommatrice en temps de calcul (jusqu’à 80% de la simulation).

Les méthodes multigrilles font partie des solveurs et des préconditionneurs efficaces et puissants pour la résolution de grands systèmes linéaires mal conditionnés. Cependant, le paramétrage optimal de ces méthodes ; tels que l’algorithme de lissage, les schémas de correction, le choix des opérateurs de restriction dépend du problème à traiter et oriente fortement l’efficacité numérique de cette famille de méthodes. De plus, il existe plusieurs algorithmes multigrilles, comprenant différents algorithmes de lissage tels que Jacobi et Gauss- Seidel, différents schémas de correction tels que V-Cycle, W-Cycle et différents opérateurs de prolongation/restriction. Le choix des différents algorithmes et le réglage fin de ces paramètres améliore le taux de convergence de cette famille de méthode et influence le temps de calcul sur l’architecture cible type CPU, GPU ou TPU. L’expertise de l’utilisateur dans la sélection des paramètres est critique pour une utilisation optimale de ces méthodes.

En partant de ce constat, l’objectif du travail de recherche proposé est de concevoir et d’utiliser des techniques d’apprentissage afin de trouver pour la méthode multigrille algébrique de meilleurs paramétrages à la fois pour les problèmes linéaires et non linéaires à 2-3 dimensions. Les études ciblées seront issues de deux grandes catégories de simulations : la dynamique des fluides et l’écoulement en milieu poreux. Parmi les applications sélectionnées, nous pouvons évoquer les modélisations Fluide-particules, Géomécanique, et séquestration du Co2, avec pour chacune des systèmes différents à résoudre.

Simulator performance has a direct impact both on the quality of simulation results, with the desired accuracy, and on the ability to explore a wide variety of scientific hypotheses. In a large number of numerical simulators, the resolution of linear systems, which are very often poorly conditioned, is the most time-consuming stage of the process (up to 80% of the simulation).
Multigrid methods are among the most efficient and powerful solvers and preconditioners for solving large, ill-conditioned linear systems. However, the optimal parameterization of these methods, such as the smoothing algorithm, the correction schemes and the choice of restriction operators, depends on the problem to be solved and strongly influences the numerical efficiency of this family of methods. In addition, there are several multigrid algorithms, including different smoothing algorithms such as Jacobi and Gauss-Seidel, different correction schemes such as V-Cycle, W-Cycle and different extension/restriction operators. The choice of different algorithms and the fine-tuning of these parameters improves the convergence rate of this family of methods and influences the computation time on the target CPU, GPU or TPU architecture. User expertise in parameter selection is critical for optimal use of these methods.
With this in mind, the aim of the proposed research work is to design and use learning techniques to find better parameterizations for the algebraic multigrid method, for both linear and non-linear 2-3-dimensional problems. The targeted studies will be drawn from two broad categories of simulations: fluid dynamics and porous media flow. Selected applications include fluid-particle modeling, geomechanics and Co2 sequestration, each with different systems to solve.

Context

La simulation numérique est un outil complémentaire aux études expérimentales permettant de comprendre finement les phénomènes physiques complexes. C’est aussi une aide importante pour la mise au point et l’évaluation de solutions techniques innovantes et prospectives. Elle est ainsi au cœur de nombreux domaines tels que la mécanique des fluides, la conception de matériaux ou les géosciences.

Dans un grand nombre de simulateurs numériques, la résolution de systèmes linéaires, très souvent mal conditionnés, constitue l’étape la plus consommatrice en temps de calcul (jusqu’à 80% de la simulation). Les préconditionneurs employés voient leurs performances variées en fonction des paramètres choisis. L’expertise de l’utilisateur dans la sélection des paramètres est ainsi nécessaire pour une utilisation optimale de ces méthodes.

Dans ce projet, nous nous intéressons aux systèmes linéaires issus de la discrétisation d’un problème de poisson à coefficients variables. Ce problème est au cœur de nombreuses méthodes numériques pour la simulation d’écoulements de type Darcy ou Navier-Stockes. Les méthodes multigrilles algébriques (AMG) sont parmi les plus efficaces pour résoudre les systèmes linéaires associés à la discrétisation de cette équation sur des maillages non structurés. Ces méthodes emploient des opérateurs de “smoothing” pour réduire les composantes à haute fréquence de l’erreur, des opérateurs de restriction pour projeter le problème sur des grilles grossières et enfin des opérateurs de prolongation pour revenir sur les tailles de grilles fines initiales. Chacune de ces étapes, ainsi que leur ordonnancement en cycles, dispose de nombreux paramètres à sélectionner (type de smoother et nombre d’itérations, choix des opérateurs de restriction et prolongation pour tenir compte de la variabilité des coefficients de l’équation, ou encore agencement des cycles multigrilles) (Briggs et al.). Le paramétrage optimal de ces méthodes dépend fortement du problème physique modélisé et représente une difficulté importante dans leur adoption.

Il est ainsi nécessaire de développer des méthodes d’apprentissage permettant d’accélérer la convergence des méthodes multigrilles, soit en obtenant un paramétrage optimal de méthodes existantes, soit en imitant directement les méthodes existantes. De nombreux travaux récents se sont engagés dans ces deux voies :
– Opérateurs de projection : (Katrutsa et al.) et (Greenfeld et al.) proposent des méthodes d’apprentissage non supervisées pour optimiser le paramétrage des opérateurs de prolongation et restriction des méthodes multigrilles géométriques (GMG) à deux niveaux avec une fonction coût permettant de minimiser le rayon spectral de la matrice d’itération. (Luz et al.) étendent ces travaux à des méthodes AMG en utilisant des Graph Neural Networks (GNN) pour gérer les maillages non structurés.

– Smoother : (Hsieh et al.) proposent une méthode d’apprentissage supervisée basée sur des Convolutional Neural Networks (CNN) et l’architecture U-Net afin d’apprendre une correction à l’algorithme de Jacobi tout en conservant les garanties de convergence. (Huang et al.) étendent ces travaux à l’optimisation du smoother de Jacobi dans les méthodes GMG.
Ces travaux s’appuient notamment sur le parallèle développé par (He et al.) entre les méthodes multi-grilles et les réseaux de convolution. En effet, le passage d’une grille grossière à une grille fine (et inversement) peut être vu comme une étape de filtrage d’un CNN.

Les résultats observés montrent une accélération d’un facteur 2 à 10 de la convergence des algorithmes existants tout en conservant d’excellentes propriétés de généralisation. Cependant, ces travaux sont limités à des étapes spécifiques des méthodes multigrilles et ont pour cible principale les méthodes GMG, restreignant leur utilisation aux maillages structurés sur des problèmes simplifiés.
L’objectif principal de ce travail de thèse est de développer des méthodes d’apprentissage pour la résolution des systèmes linéaires préconditionnés issus de la discrétisation sur maillages non structurés du problème de Poisson à coefficients variables. Ces méthodes doivent permettre d’accélérer la convergence des algorithmes multigrilles sur des architectures matérielles hétérogènes.

La simulation numérique est un outil complémentaire aux études expérimentales permettant de comprendre finement les phénomènes physiques complexes. C’est aussi une aide importante pour la mise au point et l’évaluation de solutions techniques innovantes et prospectives. Elle est ainsi au cœur de nombreux domaines tels que la mécanique des fluides, la conception de matériaux ou les géosciences.

Dans un grand nombre de simulateurs numériques, la résolution de systèmes linéaires, très souvent mal conditionnés, constitue l’étape la plus consommatrice en temps de calcul (jusqu’à 80% de la simulation). Les préconditionneurs employés voient leurs performances variées en fonction des paramètres choisis. L’expertise de l’utilisateur dans la sélection des paramètres est ainsi nécessaire pour une utilisation optimale de ces méthodes.

Dans ce projet, nous nous intéressons aux systèmes linéaires issus de la discrétisation d’un problème de poisson à coefficients variables. Ce problème est au cœur de nombreuses méthodes numériques pour la simulation d’écoulements de type Darcy ou Navier-Stockes. Les méthodes multigrilles algébriques (AMG) sont parmi les plus efficaces pour résoudre les systèmes linéaires associés à la discrétisation de cette équation sur des maillages non structurés. Ces méthodes emploient des opérateurs de “smoothing” pour réduire les composantes à haute fréquence de l’erreur, des opérateurs de restriction pour projeter le problème sur des grilles grossières et enfin des opérateurs de prolongation pour revenir sur les tailles de grilles fines initiales. Chacune de ces étapes, ainsi que leur ordonnancement en cycles, dispose de nombreux paramètres à sélectionner (type de smoother et nombre d’itérations, choix des opérateurs de restriction et prolongation pour tenir compte de la variabilité des coefficients de l’équation, ou encore agencement des cycles multigrilles) (Briggs et al.). Le paramétrage optimal de ces méthodes dépend fortement du problème physique modélisé et représente une difficulté importante dans leur adoption.

Il est ainsi nécessaire de développer des méthodes d’apprentissage permettant d’accélérer la convergence des méthodes multigrilles, soit en obtenant un paramétrage optimal de méthodes existantes, soit en imitant directement les méthodes existantes. De nombreux travaux récents se sont engagés dans ces deux voies :
– Opérateurs de projection : (Katrutsa et al.) et (Greenfeld et al.) proposent des méthodes d’apprentissage non supervisées pour optimiser le paramétrage des opérateurs de prolongation et restriction des méthodes multigrilles géométriques (GMG) à deux niveaux avec une fonction coût permettant de minimiser le rayon spectral de la matrice d’itération. (Luz et al.) étendent ces travaux à des méthodes AMG en utilisant des Graph Neural Networks (GNN) pour gérer les maillages non structurés.

– Smoother : (Hsieh et al.) proposent une méthode d’apprentissage supervisée basée sur des Convolutional Neural Networks (CNN) et l’architecture U-Net afin d’apprendre une correction à l’algorithme de Jacobi tout en conservant les garanties de convergence. (Huang et al.) étendent ces travaux à l’optimisation du smoother de Jacobi dans les méthodes GMG.
Ces travaux s’appuient notamment sur le parallèle développé par (He et al.) entre les méthodes multi-grilles et les réseaux de convolution. En effet, le passage d’une grille grossière à une grille fine (et inversement) peut être vu comme une étape de filtrage d’un CNN.

Les résultats observés montrent une accélération d’un facteur 2 à 10 de la convergence des algorithmes existants tout en conservant d’excellentes propriétés de généralisation. Cependant, ces travaux sont limités à des étapes spécifiques des méthodes multigrilles et ont pour cible principale les méthodes GMG, restreignant leur utilisation aux maillages structurés sur des problèmes simplifiés.

L’objectif principal de ce travail de thèse est de développer des méthodes d’apprentissage pour la résolution des systèmes linéaires préconditionnés issus de la discrétisation sur maillages non structurés du problème de Poisson à coefficients variables. Ces méthodes doivent permettre d’accélérer la convergence des algorithmes multigrilles sur des architectures matérielles hétérogènes.
Références :

(Briggs et al.) William Briggs, Van Henson and Steve McCormick. A Multigrid Tutorial, 2nd Edition, SIAM, (2000) ISBN: 9780898714623. (Huang et al.) Ru Huang, Ruipeng Li and Yuanzhe Xi. Learning optimal multigrid smoothers via neural networks, (2021) arXiv:2102.1207v1 (Katrutsa et al.) Alexandr Katrutsa, Talgat Daulbaev and Ivan Oseledets. Deep Multigrid: learning prolongation and restriction matrices, (2017) arXiv:1711.03825v1.

(He et al.) Juncai He and Jinchao Xu. MgNet: A unified framework of multigrid and convolutional neural network. Sci. China Math. (2019). https://doi.org/10.1007/s11425-019-9547-2
(Hsieh et al.) Jun-Ting Hsieh, Shengjia Zhao, Stephan Eismann, Lucia Mirabella and Stefano Ermon. Learning Neural PDE Solvers with Convergence Guarantees (2019). arXiv:1906.01200v1

(Greenfeld et al.) Daniel Greenfeld, Meirav Galun, Ron Kimmel, Irad Yavneh and Ronen Basri. Learning to Optimize Multigrid PDE Solvers. ICML (2019). arXiv:1902.10248
(Luz et al.) Ilay Luz, Meirav Galun, Haggai Maron, Ronen Basri and Irad Yavneh. Learning Algebraic Multigrid Using Graph Neural Networks (2020). arXiv:2003.05744

Objectifs

L’objectif principal de ce travail de thèse est de développer des méthodes d’apprentissage pour la résolution des systèmes linéaires préconditionnés issus de la discrétisation sur maillages non structurés du problème de Poisson à coefficients variables. Ces méthodes doivent permettre d’accélérer la convergence des algorithmes multigrille sur des architectures matérielles hétérogènes.

Méthode

Afin de répondre à l’objectif fixé, nous proposons un plan de travail en 4 étapes :
– Etat de l’art des méthodes multigrilles améliorée par l’IA : Il s’agit dans un premier temps de faire un inventaire des méthodes d’accélération de chaque étape des algorithmes multigrilles. Il faudra évaluer leur impact en analysant les taux de convergence et le rayon spectral des opérateurs de transfert d’erreur résultants. Les travaux porteront d’abord sur des maillages structurés (réseau CNN) puis sur des maillages non structurés (réseau GNN)
– Conception d’un solveur linéaire multigrille hybride par composant : Sur la base des travaux précédents, il s’agira ensuite de proposer un choix de méthode d’apprentissage pour accélérer chaque étape du solveur multigrille (smoother, opérateurs de projection, niveaux de grille et type de cycle). Ces méthodes seront entraînées de manière indépendante puis assemblées lors de l’évaluation du modèle.
– Conception d’un solveur linéaire multigrille global : L’optimisation de chaque paramètre n’est pas complètement indépendante des autres composantes: une fois l’approche par bloc établie, on cherchera à enchaîner directement les étapes du solveur multigrille hybride dans un entraînement global.
– Développement d’un framework général de solveur linéaire hybride : Les méthodes de préconditionnement construites à partir des méthodes de déflation, de décomposition de domaine ou multigrille ont des équivalences (Tang et al., DOI:10.1007/s10915-009-9272-6). L’objectif sera d’adapter les méthodologies développées précédemment pour accélérer ces divers types de méthodes.
L’efficacité des méthodes développées sera évaluée sur des applications industrielles telles que les modélisations des interactions Fluide-particules, la Géomécanique, ou la séquestration du Co2, avec chacune des systèmes linéaires à résoudre ayant des caractéristiques différentes.
Nous évaluons la généralisation de ces méthodes sur un ensemble de paramètres de simulation variables : problème physique sous- jacent, géométrie du domaine, conditions aux bord ou encore taille initiale de la grille.

Résultats attendus – Expected results

La première cible de la thèse est l’élaboration et la validation de la solution proposée. Ces composants logiciels seront dans un premier temps intégrés dans une bibliothèque écrite dans des frameworks spécifiques (Tensorflow, Pytorch, JAX) permettant de bénéficier directement d’une performance optimisée sur les architectures matérielles de type CPU, GPU voire TPU.
Cette solution pourra également être interfacée dans les bibliothèques telles que Trilinos et AMGX ce qui nous permettra d’avoir des solutions performantes de référence à la fois sur CPU et GPU. Son efficacité et sa portabilité seront ensuite évaluées dans les simulations de la dynamique des fluides et l’écoulement en milieu poreux.

Categories
cdd highlight job

[JOB] Postdoc at CEA Saclay 👩‍💻🧑‍💻- Extension of the massively parallel code AMITEX: non-periodic, GPU, coupling

Subject

The AMITEX code developed by CEA is a massively parallel code (distributed memory), using Discrete Fourier Transforms, for the numerical simulation of the mechanical behavior of heterogeneous materials. It overcomes the limitations (in size and computation time) encountered by standard finite-element codes used in the same context. A stabilized version of the code, available to the public at https://amitexfftp.github.io/AMITEX/, is used by various national (Mines Paris, ONERA, ENSTA Bretagne, I2M-ENSAM Bordeaux, Météo-France, etc.) and international (USA, UK, China, Canada, Germany, Finland, Poland, etc.) teams.

The aim of the post-doc, proposed over two years, is threefold: to extend the field of application of the AMITEX code to non-periodic boundary conditions, to explore a possible adaptation to hybrid CPU/GPU architectures, and to use these extensions to develop FFT-based multi-scale couplings. This objective is built around the 2decomp open source library, on which AMITEX is based, and whose development was taken over in 2022 (https://github.com/2decomp-fft/2decomp-fft)[1] by a French-English team. 

The various tasks of the post-doc consist of :

– extend the functionalities of the AMITEX code (non-periodic BC) by introducing different types of discrete transforms (sine, cosine, Fourier) within the 2decomp library,

– explore 2decomp‘s current development towards the use of hybrid CPU/GPU architectures, with the aim of setting up a first AMITEX-GPU code,

– use this new functionality for multi-scale coupling, where a local (refined) simulation interacts with a global (unrefined) simulation [3] via non-periodic boundary conditions,

[1] Rolfo, S.; Flageul, C.; Bartholomew, P.; Spiga, F. & Laizet, S. The 2DECOMP&FFT library: an update with new CPU/GPU capabilities, Journal of Open Source Software, The Open Journal, 2023, 8, 5813

[2] Gélébart L., FFT-based simulations of heterogeneous conducting materials with combined nonuniform Neumann, Periodic and Dirichlet boundary conditions, Eur. Jour. Mech./A solids, Vol. 105, 2024

[3] Noé Brice Nkoumbou Kaptchouang and Lionel Gélébart. Multiscale coupling of fft-based simulations with the ldc approach. Computer Methods in Applied Mechanics and Engineering, 3

Candidate and subject

– The candidate should have completed his/her thesis in the field of numerical mechanics and have a strong and practical interest for computer development, particularly through open source codes (2decomp and AMITEX),

– Although the subject is aimed at (numerical) solid mechanicians, it may also be suitable for (numerical) fluid mechanicians or physicians who wish to open up to solid mechanics,

– Part of the topic concerns extension to GPUs, so prior knowledge of GPU programming will be a plus. However, this point is not essential if the candidate demonstrates solid computer skills that will enable him or her to be trained quickly,

– Depending on the candidate’s professional project and/or initial skills, the part of the work on multi-scale coupling, which will enable the project to be promoted through scientific publications, could be strengthened and/or extended to other types of coupling, and especially multi-physics couplings.

Details

The post-doc, based at CEA Saclay and granted for 2 years, will draw on the skills of L. Gélébart (DES/ISAS/DRMP/SRMA), developer of the AMITEX code, Y. Wang, HPC simulation specialist at the Maison de la Simulation (DRF) and Cédric Flageul (co-developer of the 2decomp library) from the University of Poitiers.

Contacts 

lionel.gelebart@cea.fr

yushan.wang@cea.fr

cedric.flageul@univ-poitiers.fr

Categories
cdd highlight job

[JOB] Engineer Position 👩‍💻🧑‍💻- HPC/HPDA support and development

Overview

Maison de la Simulation offers 2-3 engineer positions to join the newly created PDI team.

  • Contact: Yushan Wang (yushan.wang@cea.fr) & Benoît Martin (bmartin@cea.fr)
  • Duration: 3 years
  • Start date: ASAP

Application

Candidates must have at least a Master’s degree or equivalent in Computer Science, Applied Mathematics, or other relevant fields. A PhD degree and working experience in a relevant domain are appreciated. Good programming skills are required.

Applications should be sent to Yushan Wang and Benoît Martin. They should include:

  • a curriculum vitae
  • a motivation letter
  • at least two referees with their email addresses
  • links to Masters/PhD thesis and publications
  • links to software contributions

Context

With the increasing complexity of numerical simulation codes, new approaches are required to analyze the ever-growing amount of data. This requires coupling up-to-date data analysis libraries with the existing highly optimized numerical simulation codes. The PDI Data Interface code coupling library is designed to fulfill this goal.

The open-source PDI Data Interface library is designed and developed for process-local loose coupling in high-performance simulation codes. PDI supports the modularization of codes by inter-mediating data exchange between the main simulation code and independent modules (plugins) based on various libraries. It is developed in modern C++ and offers C, Fortran, and Python application programming interfaces.

PDI offers a reference system similar to Python or C++’s shared_ptr with locking to ensure coherent access by coupled modules. It provides a global namespace (the data store) to share references and implements the Observer pattern to enable modules to react to data availability and modifications. It implements a metadata system that can specify a dynamic type for references based on the value of other data (e.g., array size based on the value of a shared integer). Codes using PDI’s declarative API expose the buffers in which they store data and trigger notifications when significant steps in the simulation are reached. Third-party libraries such as HDF5, SIONlib, or FTI are wrapped in a PDI plugin. A YAML configuration file is used to interleave plugins and additional code without modifying the original application.

Another aspect we explore with PDI is in-situ data analysis, which performs numerical analytics during the simulation. This is necessary due to the ever-growing gap between file system bandwidth and compute capacities. To this end, we are developing the Deisa plugin. This plugin is based on the open-source Dask framework and allows us to transfer data to dedicated processes to perform in-situ analysis.

One of our goals is to establish a feedback mechanism between the in-situ data analysis and the numerical simulation. This allows better resource allocations and on-the-fly simulation monitoring. Another aspect that in-situ analysis enables is using AI methods for HPC and HPDA. For instance, we can have unsupervised detection of rare events during the simulation, which can greatly reduce the amount of produced data, thus reducing stress on the file system.

Work environment

At Maison de la Simulation laboratory, you will join a group of engineers and scientists focusing on all aspects of high-performance computing (HPC). You will have the opportunity to collaborate with PDI users and to introduce new features in the PDI plugin family. As a member of the PDI team, you will also have the opportunity to exchange with the developers of other HPC codes to enrich your skills in HPC code development. To validate your developments, you will be provided with access to the top European supercomputers (Adastra, Jean-Zay, etc.).

Work content

As a member of the newly created PDI team, your primary focus will be developing and maintaining the PDI library.

  • Develop core functionalities and new plugins for PDI
  • Develop the Deisa library
  • User-support
  • Organize training sessions
  • Library packaging and deployment

Skills

The successful candidate will master the following skills and knowledge:

  • Proficiency in modern C++ (C++14 and above)
  • Software engineering and library design
  • Modern development environment (Linux, git, CMake, etc.)
  • Communication (writing, presenting, and training)
  • Team-work and integration in an international environment

In addition, the following will be considered a plus:

  • Data analysis libraries such as Dask
  • Knowledge and experience with Python, Fortran and/or GPU computing
  • HPC and parallel libraries such as OpenMP and MPI
  • HPC parallel IO libraries such as HDF5 or NetCDF
  • Experience with supercomputer tools (slurm, sbatch, etc), packaging and deployment

Salary and benefits

The CEA offers salaries based on your degrees and experience. This position offers several advantages:

  • The possibility of joining collaborations with other European laboratories, the United States, and Japan
  • Numerous opportunities to travel internationally (exchanges, conferences, workshops and more)
  • 5 weeks of paid vacation and 4 weeks of RTT per year, and up to 2 days of remote work per week
  • Reimbursement of up to 75% of public transport cards and a free transport network throughout the Ile-de-France region
  • Complimentary health insurance and several company savings plans

References

Categories
cdd highlight job

[JOB] C++ expert engineer 👩‍💻🧑‍💻- Contribution to the development of the Kokkos GPU computing library within the CExA “Moonshot” project

Join the CEA’s ambitious “Moonshot” project, CExA, and contribute to the development of the Kokkos GPU computing library. We are recruiting six talented and enthusiastic C++ development engineers for a period of 2 years to work at our CEA Saclay site near Paris.

To apply, please send your application (resume and cover letter) to contact@cexa-project.org. You can use this same address for any questions concerning the offer. Applications will be evaluated from mid-May until the position is filled.

Context

Europe is investing to build exaflop supercomputers in the coming years, including one in France, at the CEA, in 2025. These machines will be heterogeneous, accelerated by GPUs of various brands and architectures. Ensuring performance and portability under these conditions is certainly one of the greatest challenges of the Exascale. To address it, CEA is investing heavily in an ambitious “Moonshot” project: CExA. In this project, we will setup libraries to fully exploit this computing power in the scientific applications of the CEA by contributing, extending and adapting the open-source library Kokkos. Within CExA, we represent teams with expertise in numerical computation from the four components of the CEA.

  • Maison de la Simulation of the DRF is a joint research and engineering laboratory of CEA, CNRS, Univ. Paris-Saclay and UVSQ specialized in high performance computing and numerical simulation.
  • The DES’s software engineering department for simulation brings together three laboratories that address the issues of simulation environment, AI and data science, high performance computing and numerical analysis.
  • The DSCIN at DRT/LIST is responsible for the research and development of digital integrated circuits and processors for AI, as well as the design of complex digital architectures. It also works on solutions for embedded systems and develops design tools for embedded AI, embedded systems and trusted circuits.
  • The DSSI of the DAM manages activities in the fields of computer science, applied mathematics and information systems, covering a wide spectrum from definition and design to user services.

Mission

As part of a new agile team being set up to carry out the CExA project, you will work in collaboration with the European HPC ecosystem and the teams in charge of the development of Kokkos in the United States (Sandia and Oakridge National labs). You will enrich the library to fit the needs of the CEA applications and to the technologies developed by Europe for the Exascale (EPI, SiPearl, RISC-V).  You will work with cutting-edge and experimental hardware technologies from major vendors (NVIDIA, AMD, INTEL, ARM) that will equipped forthcoming super-computers.

Your mission will include:

  • Agile development in C++ of the CExA middleware to address the following areas of improvement:
    • Adaptation to “distributed memory” architectures
    • Support for heterogeneous architectures for European exaflop supercomputers
    • Interfacing with external libraries and data processing tools
    • Simplification of deployment
  • Porting via Kokkos and integration of new functionalities in selected application demonstrators (hydrodynamics, fusion energy, AI-assisted medicine)
  • Support and animation on parallel programming models within the laboratory and at the scale of European and global collaborations.

Skills

You have a master and/or an engineering degree in computer science and:

  • You have a solid knowledge of advanced C++ and the latest standards.
  • You know how to fit into an agile development process (SCRUM) and you master the basic tools associated with collaborative development (git, github, etc.).
  • You have skills in software engineering. You are familiar with common development environments and associated tools (cmake, docker, spack, gtest, ctest, etc.).
  • Knowledge of parallel programming (GPU, multi-threaded, etc.) is a plus, especially with the Kokkos library or equivalent.
  • You are autonomous and you wish to be part of an international work team. You master technical English (written and oral). You are interested in the world of high-performance computing and its challenges and follow the evolution of technologies.

Salary and benefits

The CEA offers salaries based on your degrees and experience.

This position offers several advantages:

  • the possibility to join collaborations with other European laboratories, the United States and Japan,
  • Numerous opportunities to travel internationally (exchanges, conferences, workshops and more)
  • Up to 3 days of telecommuting per week
  • Reimbursement of up to 75% of public transport cards and a free transport network throughout the Ile-de-France region,
  • An interesting complementary health insurance and several company savings plans,
  • 5 weeks of paid vacation and 4 weeks of RTT per year.
Categories
cdd highlight job

[JOB] Postdoc at CEA Cadarache 👩‍💻🧑‍💻- Autotuning for ultra-high performance computing with partitioned coupling

Contact

FAUCHER Vincent CEA DES/DTN/DIR (See pdf)

Background

Taking into account multiple and coupled physics is at the heart of many application needs in fields as varied as, but not limited to, aeronautics, defense and biology. This is also strong area of expertise for CEA’s Energy Division, with multiple domains including fluid-structure interaction, neutronics coupled with thermal-hydraulics a/o thermal-mechanics or severe accident modeling. The emergence of exascale architectures opens the way to promising new levels of high-fidelity simulations, but is also significantly increasing the complexity of many software applications in terms of total or partial rewriting. It therefore specifically encourages coupling to limit development work. The idea is to search for each physics of interest in a necessarily reduced number of highly optimized software components, rather than making specific, possibly redundant developments in standalone applications.
Once the coupled multiphysics problem has been written with the expected levels of accurracy and stability, the proposed work concentrates on the resolution algorithms to enable the coupling between applications asssumed to be themselves exascale-compatible, to be solved efficiently at exascale. It is also worth noting that, in general, the couplings under consideration can present a high level of complexity, involving numerous physics with different level of feedback between them and various communications from border exchanges to overlaping domains. The current post-doctoral internship to be carried out in the framework of the ExaMA collaborative project, is in particular dedicated to the identification and dynamic tuning of the relevant numerical parameters arising from the coupling algorithms and impacting the computational efficiency of the global simulation. Considered problems are in the general case time-evolving problems, with a significant number of time iterations allowing using the first iterations to gather data and conduct the tuning.

Categories
job stage

[JOB] M2 coupling IA for HPC Internship

Enhancing heat equation Simulations with AI-Driven In-Situ Analysis Using High-Performance Computing

Superviseur : Martial MANCIP, Benoît MARTIN, Yushan WANG
Durée du stage : 6 months (from february 2024)
Langue : french or english
Lieu : Maison de la Simulation, CEA Saclay

Context

This master internship focuses on leveraging Artificial Intelligence (AI) for High-Performance Computing (HPC) simulations in the field of heat equation.
The project aims to integrate AI-based techniques within a heat simulation code to enable in-situ analysis and inference, optimizing the post-treatment process and enhancing its outputs capabilities.

Objective

The primary goal of this internship is to develop and implement an AI-driven methodology within a heat equation simulation framework for real-time heat source detection (so-call event) and labeling in small simulation boxes. These labeled events, represented through 3D renderings or ensembles of 2D slices, will serve as training, validation, and test datasets for the AI model. Subsequently, the trained AI model will be integrated into the DEISA framework available with the simulator to conduct in-situ simulations with enhanced inference capabilities.

DEISA: dask-enabled in situ analytics
https://cea.hal.science/hal-03509198v1

Methodology

Data Generation and Labeling: Use the HPC simulator to create small simulation boxes. Implement algorithms to detect and label one or two specific events within these boxes.
Dataset Preparation: Construct training, validation, and test sets using 3D renderings or 2D slices generated from the labeled events.
AI Model Development: Design and train an AI model, such as Convolutional Neural Networks (CNNs) or Recurrent Neural Networks (RNNs), to recognize and classify events within the simulation data.
Integration with simulator and DEISA:
Implement the AI model within the DEISA framework for in-situ simulations anylisis.
Use the AI model to perform real-time inference during simulation runs.

Expected Outcomes

A labeled dataset of events within small simulation boxes.
Trained AI model capable of accurately detecting and labeling events in simulation data.
Integration of the AI model within the DEISA framework for in-situ simulations with enhanced inference capabilities to be abble to feedback high frequency outputs in the simulation.
Evaluation of the AI’s performance in improving simulation accuracy, efficiency, and predictive capabilities.

We expect to add the use of a feedback process from DEISA to the simulation to switch on high frequency outputs when the AI detects one event and stops them with it has vanished.

Conclusion

The successful implementation of AI techniques within the simulator code for in-situ analysis has the potential to significantly enhance the efficiency of the output production of simulations.

This internship provides a stepping stone towards the integration of cutting-edge AI methodologies with HPC simulations, opening doors for more precise predictions and deeper insights into complex phenomena.

Candidate profil

  • Parallel computing
  • C++
  • Python3
  • AI : DL with Tensorflow or Pytorch

How to candidate

Send cover letter and CV to contact@mdls.fr

Categories
cdd highlight job

[JOB] PostDoc at LIP6 👩‍💻🧑‍💻- Precision auto-tuning and numerical validation of high performance simulations

Background

This PostDoc will be carried out in the framework of the PEPR (Programme et Equipement Prioritaire de Recherche) NumPEx project devoted to High Performance Numerics for the Exascale and financed by the France2030 investment program.

Research directions

During this PostDoc several directions will be explored to improve algorithms for precision auto-tuning and numerical validation.

We plan to design a novel autotuning algorithm that will automatically provide arbitrary precision codes, from a required accuracy on the computed results. Because of the number of possible type configurations, particular attention will be paid to the algorithm performance. The type configuration produced will then enable one to improve storage cost, and also execution time taking into account the numerical formats available on the target architectures.

We plan to combine mixed precision algorithms and precision autotuning tools. Such automatic tools may be useful in the design of mixed precision linear algebra algorithms. Conversely the performance of precision autotuning tools may be improved thanks to mixed precision algorithms. Linear algebra kernels could be automatically identified in simulation codes, and replaced by their mixed precision version, in order to reduce the exploration space for precision tuning.

The precision auto-tuning algorithms designed during this PostDoc will be validated on large scale programs developed by partners of the NumPEx project. Furthermore new methodologies will be proposed to perform autotuning of both numerical formats and performance parameters in collaboration with experts in coupled physics simulations.

Location

Sorbonne Université and its Computer Science lab LIP6 are settled on the Pierre & Marie Curie Campus in the Latin Quarter of Paris, France.

Salary

The gross salary per month (including national health insurance and employment insurance) varies from 2682 to 3701 euros depending on the experience.

Duration

1 year, renewable 1 year

Qualifications and skills

Candidates must have a PhD in Computer Science, Applied Mathematics or other relevant fields, with good programming skills. Developments will be carried out in C++ and Python, so programming expertise in at least one of these languages is required. Good knowledge in numerical algorithms and floating-point computation is also required.

Categories
cdd highlight job

[JOB] HPC DevOps Engineer at CEA 👩‍💻🧑‍💻- Deployment and CI on supercomputers for the C++ Kokkos library within the “Moonshot” CExA project

CEA is recruiting DevOps engineers for a 2-year period to join the CExA “Moonshot” project team, which is setting up CEA’s GPU computing software stack around the Kokkos C++ library, to contribute to innovative packaging, deployment and continuous integration approaches for supercomputers, based in particular on Spack. A team of more than 10 people is currently being set up. The positions will be based at the CEA Saclay site near Paris.

To apply, please send your application (CV and covering letter) to contact@cexa-project.org. If you have any questions about the position, please use the same address. Applications will be assessed from mid-November until the position is filled.

Context

Europe is preparing for the arrival of the first exascale supercomputers, including one in France, at the CEA, from 2025. These machines will be heterogeneous, accelerated by GPUs of various vendors and architectures. Ensuring performance and portability under these conditions is undoubtedly one of the greatest challenges of Exascale. To address this, the CEA is investing heavily in an ambitious ‘Moonshot’ project: CExA. In this project, we will be providing the libraries needed to fully exploit this computing power in CEA’s scientific applications by contributing to, extending and adapting the Kokkos open-source library. The software stack created in this way will be deployed on the supercomputers using the Spack tool, which has been specially designed for supercomputing environments. Within CExA, we represent teams with expertise in numerical computation from the CEA’s four divisions.

  • Maison de la Simulation (https://www.mdls.fr) of Fundamental Research division the is a joint research and engineering laboratory of the CEA, CNRS, Paris-Saclay University and Versailles Saint Quentin University specializing in high-performance computing and numerical simulation.
  • The software engineering department for simulation of the Energy Research Division groups together three laboratories that address the issues of simulation environments, AI and data science, intensive computing and numerical analysis.
  • LIST’s DSCIN at Technological Research Department is responsible for the research and development of digital integrated circuits and processors for AI, as well as the design of complex digital architectures. It also works on solutions for embedded systems and develops design tools for embedded AI, embedded systems and trusted circuits.
  • The DSSI at Military Application Department manages and carries out activities in the fields of computing, applied mathematics and information systems, covering a broad spectrum from definition and design to user services.

Mission

As part of a new agile team being set up to carry out the CExA project, you will be working in collaboration with the French (in particular NumPEx) and European HPC ecosystem and with the teams in charge of developing Kokkos and Spack in the United States to adapt the tools to the needs of the applications developed by the CEA and to the technologies developed by Europe for Exascale (EPI, SiPearl, RISC-V).

Your mission will include:

  • Supporting agile development in C++ around Kokkos by contributing to the following points:
  • Implementing a testing and performance measurement strategy.
    • Designing, automating and administering continuous integration pipelines.
    • Working with development teams to optimize packaging and deployment processes.
    • Assist with deployment on heterogeneous architectures for European exaflop supercomputers.
  • Identify and participate in the development of missing functionalities within the tools used for packaging and deployment and continuous integration.
  • Helping to deploy Kokkos in the software environments of selected application demonstrators (hydrodynamics, fusion energy, etc.).
  • Provide support and leadership on these themes within the organization and on the scale of European and global collaborations.

Skills

You have a Master’s degree and/or an engineering degree in computer science and:

  • You will be able to work within an agile development process (SCRUM) and be familiar with the basic tools associated with collaborative development (Git, GitHub, etc.).
  • You have software engineering skills. You are familiar with common development environments and associated tools (CMake, Docker, Spack, GoogleTest, CTest, etc.).
  • Scripting skills (Python, Shell, etc.)
  • Any knowledge of parallel programming (GPU, multi-threading, etc.) is a plus, particularly with the Kokkos library or equivalent.
  • You have knowledge of the C++ ecosystem.
  • You are a self-starter and are keen to join an international team. You have a good command of technical English (written and spoken). You are interested in the world of high-performance computing and its challenges and keep updated with the latest technological evolution.

Salary and benefits

The CEA offers competitive salaries depending on your qualifications and experience.

There are several advantages to this position:

  • The possibility of joining existing collaborations with other laboratories in Europe, the United States and Japan,
  • Numerous opportunities for international travel (exchanges, conferences, workshops and more),
  • Up to 3 days’ teleworking per week,
  • 75% reimbursement on public transport and a free transport network throughout the Ile-de-France region,
  • An attractive supplementary pension scheme and several company savings plans,
  • 5 weeks’ paid holiday and 4 weeks’ RTT per year.
Categories
highlight job Non classé stage

[JOB] M2 HMI Internship Interactions in VRWall

Superviseur : Martial MANCIP,
Durée du stage : 6 months (from february 2024)
Langue : french or english
Lieu : Maison de la Simulation, CEA Saclay and LISN, UPSaclay

Context

The aim of the project is to build virtual display walls with multiple resolutions and interactions using Augmented Reality (AR). This project will be based on the high-end multiple resolution data visualisation system at Maison de la Simulation (https://mdls.fr/).


Specifically, we have been developing tools for the data analysis of numerical simulations either in-situ while running on a super-computer or with data written on disks. We work on the visualisation of ensemble of simulations through the TiledViz infrastructure to build efficient analysis and visualisations of the results of massively-parallel simulations. We also use artificial intelligence and machine learning approaches to analyse complex data as produced in medicine/biology applications.

This internship is funded by CEA and will be conducted mostly at Maison de la Simulation and partly at LISN (Université Paris-Saclay). We aim to develop this topic to a Ph.D. project on the interaction of multiple users during distance collaborative sessions.


It would start at best in February 2024 for a period of six months after a security clearance, and its remuneration will depend on the CEA grid according to the candidate’s training and experience.

Internship objectives

The focus of this project is to allow remote users to access this high-end infrastructure TiledViz using optical-see-through AR head-mounted display (HMD) to visualise and explore complex datasets. A typical scenario would be for this system to be used in collaborative meetings of people of various expertise to analyse scientific data.


There are several aspects to be considered in this project:
1) Transform 3D interactions with hand gestures, voice commands, etc. captured from the HMD device to 2D interactions that would be processed by TiledViz;

2) Capture the data flow from TiledViz infrastructure (located at Maison de la Simulation) to readapt it as a virtual wall to the
current context of interaction of the remote users;

3) Adapt the rendering resolution on the HMD based on the distance of the user to the virtual wall;

4) Evaluate the performance and user experience of using of virtual wall via AR headsets and the real TiledViz system.

Candidate profil

  • C#
  • Unity
  • Linux
  • MRTK2
  • C

How to candidate

Send an letter to martial.mancip@maisondelasimulation.fr

Categories
highlight job thesis

[JOB] 👩‍💻🧑‍💻Optimization framework for large deep neural networks

[FR] Plateforme logicielle d’optimisation pour réseaux de neurones profonds de très grande taille

Doctoral Domain : Computer Science

Funding : CIFRE schema, hired in French CDD (36 months) by Huawei France

Work Places : Huawei Paris Research Center (Boulogne-Billancourt) and Maison de la Simulation (University Paris-Saclay)

Industrial Supervision : Dr. Chong Li and Prof. Denis Barthou, Huawei Paris Distributed and Parallel Technologies Lab

Academic Supervision : Prof. Nahid Emad, Université Versailles Saint-Quentin-en-Yvelines

Keywords : Massively Parallelism, Linear Algebra, Performance Optimisation, Deep Learning, Large Models