HPC Packaging Expert H/F

Apply on the CEA website

 

Context

Launched in 2023 for a duration of 6 years, The NumPEx PEPR aims to contribute to the design and development of numerical methods and software components that will equip future European Exascale and post-Exascale machines. NumPEx also aims to support scientific and industrial applications in fully exploiting their potentials.

Exa-DI is in charge of the implementation of the co-design and co-development processes across NumPEx for an augmented and productive axascale software. This will be achieved through the creation of a national software development and enginerring team (researchers and engineers) with multiple expertise, bridging the gap between digital research and computational science and engineering applications. The applications cover a broad spectrum of stratégic domains, such as astrophysics, particle physics, climatology/meterology, plasma physics, materials physics, digital healthcare, energy and engineering. the integration within the NumPEx software stack will be carried out in the form of software developmentkits that can be easily deployed and instantiated in many ways to enable substainable development and performance portability of exascale applications. The co-design and co-development activity of Exa-DI will follow an Agile methodology and be built on an iterative process, driven by application needs and centered on algorithmic motifs (computational, communication). This effort will be supported by community software policies, and an enabling team that ensures common software packaging technologies and continuous integration methodologies in collaboration with national computing facilities, together with training and best practices materials for reaching the broader computational community.

Mission

Our role in NumPEx is to design and implement an innovative packaging, deployment and testing strategy. Commonly used solutions show their limits in front of the complexity of supercomputers and applications, as well as the need for reproducibility for open science. Our goal is to build a solution based on a new generation of promising packaging tools: Guix, Nix, Spack, etc.

You will contribute to the design and implementation of the packaging and continuous integration strategy. You will participate in the deployment and testing of the infrastructure. Furthermore, you will also participate with user support and training activities around all these aspects.

Our packaging strategy is centered on the open source tools Guix, Nix and Spack. In direct contact with the development teams of these tools, with the supercomputer administration teams, and with our foreign counterparts (European, Japanese, American, etc.), you will participate in:

  • the design of the packaging strategy of the NumPEx project
  • the effort of packaging these libraries with the proposed tools
  • the design of a package test and validation solution taking into account the specificities of supercomputers
  • the development of a solution allowing non-administrator users to deploy NumPEx libraries on supercomputers
  • training around all of these aspects for researchers and engineers

Required Skills

The essential expected skills are:

  • Good practice of Unix/Linux system and system administration
  • Good programming experience (C/C++, Python)
  • Experience with software compilation and installation chains, version management tools, testing and continuous integration (CMake, Git, GitHub, GitLab, …)
  • The work being performed in an international context, a good practice of technical English (written and oral) is expected (proficiency in French is not compulsory), as is a taste for team work.

Any additional skill related to package managers (Guix, Nix, Spack, apt, rpm, pip, etc.) containers (Singularity/Apptainer, Docker, etc.) or open source development are a plus. An initial training time will be provided to complement the missing skills. You will integrate an academic research environment which will give you, throughout your contract, the opportunity to complete your training on cutting-edge technologies.