Offers “CEA”

Expires soon CEA

Engineer Position - HPC/HPDA support and development H/F

  • CDD
  • Gif-sur-Yvette (Essonne)
  • IT development

Job description

Détail de l'offre

Informations générales

Entité de rattachement

Le CEA est un acteur majeur de la recherche, au service des citoyens, de l'économie et de l'Etat.

Il apporte des solutions concrètes à leurs besoins dans quatre domaines principaux : transition énergétique, transition numérique, technologies pour la médecine du futur, défense et sécurité sur un socle de recherche fondamentale. Le CEA s'engage depuis plus de 75 ans au service de la souveraineté scientifique, technologique et industrielle de la France et de l'Europe pour un présent et un avenir mieux maîtrisés et plus sûrs.

Implanté au cœur des territoires équipés de très grandes infrastructures de recherche, le CEA dispose d'un large éventail de partenaires académiques et industriels en France, en Europe et à l'international.

Les 20 000 collaboratrices et collaborateurs du CEA partagent trois valeurs fondamentales :

• La conscience des responsabilités
• La coopération
• La curiosité

Référence

2024-32456

Description de la Direction

The Fundamental Research Division (DRF) of the CEA conducts scientific activities in the fields of physics, chemistry, biology and health, materials science, and climate and environmental sciences.

Description de l'unité

Maison de la Simulation is a joint laboratory between CEA, CNRS, Université Paris-Saclay and Université Versailles Saint-Quentin. It specializes in high-performance computing and numerical simulations in close connection with physical applications, parallel software engineering, programming models, visualization techniques, artificial intelligence, and quantum computing.

Our mission is to guide, support, and stimulate scientific communities to get the best from available computing resources, particularly large-scale infrastructures. Maison de la Simulation has a mission to help emerge a super-computing community in France and develop strong synergy between researchers and engineers of different scientific fields. This enables materializing significant scientific progress made possible thanks to high-performance computing. It gathers multidisciplinary teams furnishing the range of expertise required to develop and exploit HPC tools.

Description du poste

Domaine

Mathématiques, information scientifique, logiciel

Contrat

CDD

Intitulé de l'offre

Engineer Position - HPC/HPDA support and development H/F

Statut du poste

Cadre

Durée du contrat (en mois)

36

Description de l'offre

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.

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

Desired profile

Profil du candidat

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

In accordance with CEA's commitments to the integration of people with disabilities, this position is open to everyone. The CEA offers accommodations and/or organizational arrangements for the inclusion of workers with disabilities.

Make every future a success.
  • Job directory
  • Business directory