MAISON DE LA SIMULATION / The laboratory

Research — Science of Computing

Developing methods, libraries and software environments that help scientific applications make effective use of large-scale computing.

The science behind large-scale computing

The Science of Computing (SoC) team develops methods and tools that help scientific applications benefit from high-performance computing. Computer science, artificial intelligence and applied mathematics come together in five complementary research areas.

Team leader: Julien Bigot.

Our research is connected with the national scientific computing community through RT Calcul (formerly GDR Calcul) and GDR C4P. The team is also connected with the CEA “Calcul intensif” network. These links support exchanges on numerical methods, parallel computing, software and computing architectures.

Programming models

Programming for heterogeneous architectures

Contact: Mathieu Lobet.

We investigate performance portability, particularly with Kokkos and SYCL, and emerging GPU, FPGA and Arm architectures. Our goal is to make it easier to develop scientific applications that perform well across supercomputers, while exploring energy efficiency and quantum computing.

The team contributes to Kokkos and DDC, a library used by GYSELA-X++ for tokamak plasma simulation. We also study FPGA implementations of molecular dynamics and hydrodynamics kernels, using tools such as Maxeler and oneAPI.

These activities are connected with NumPEx / Exa-Soft, including Task 1.1 on C++ code transformations and optimisation, the CExA project on GPU computing tools, and the application work package of the HQI initiative.

Data handling

Keeping data analysis close to the simulation

Contact: Yushan Wang.

Large simulations require new approaches to I/O and analysis. With PDI and its plugins, we develop data handling that is decoupled from simulation code. Deisa connects MPI applications with distributed Dask processing to analyse results during computation.

The team supports the integration of these tools, in situ analytics and event detection, in collaboration with the AI and visualisation group. It has contributed to data handling in the astrophysics applications ARK-MHD and NOVA++.

Maison de la Simulation contributes to the leadership of Exa-DoST, the NumPEx project on exascale data software and tools, and its Work Package 3.

Data analytics and visualisation

Analyse, compare and visualise

Contact point: Martial Mancip.

We develop tools to analyse numerical simulation data in situ, while a simulation is running on a supercomputer, or in post-processing, using results stored on disk.

  • AI-assisted analysis. We use computer vision, including supervised deep learning models trained on labelled and oversampled data, to detect events and patterns and derive global metrics of how simulations evolve. We apply the same methods to complex medical and biological data.
  • Visualisation with HIVE-SA. HIVE-SA (High-resolution Immersive Visualization Environment for Scientific Analysis) brings together TiledViz, which lets teams compare and interact with hundreds of simulation results as a mosaic, and VRWall, which recreates the laboratory’s display wall in mixed reality. We offer HIVE-SA to other research units, with support from the first discussion through to analysis sessions. The visualisation tools run where the data are hosted, so teams can work from their own lab without transferring their datasets.
  • Standard frameworks. We use VisIt, ParaView and VMD to build efficient analysis and visualisation pipelines for massively parallel simulations.
Software deployment

Making scientific software usable

Contact: Julien Bigot.

A library’s usefulness depends on more than its algorithms. Installation, packaging, continuous integration and deployment are essential to adoption. Our experience combines the perspectives of users, library developers and supercomputer administrators.

Collaboration with IDRIS covers the software environments of Jean Zay and regional resources such as the Moulon computing centre. Supporting applications also builds practical experience with containers, including Singularity on Adastra.

Established as a dedicated activity in 2023, this work draws on Spack and Guix-HPC. It is part of NumPEx, including Exa-DI Work Package 3 on packaging, deployment and continuous integration.

Mathematics and computing architectures

Connecting mathematics and architectures

Contact: Samuel Kokh.

The team develops mathematical analysis and numerical methods suited to supercomputers and large datasets, connecting theoretical foundations with the requirements of large-scale execution.

Research covers large linear systems, numerical methods for partial differential equations — including finite volume methods — and algorithms for machine learning and artificial intelligence.

Software for the community

Discrete domain computation

DDC

A header-only C++ library for multidimensional meshes. It provides containers based on C++23 mdspan, geometric iterators and type-safe indexing. Mesh semantics support both generic and specialised algorithms.

Explore the project ↗

In situ analytics

Deisa

Deisa connects MPI simulations with distributed Dask processing. Analysing data during computation reduces transfers and intermediate storage.

Explore the project ↗

Performance portability

Kokkos

The Kokkos ecosystem supports C++ applications across different hardware architectures using a shared code base. It is a Linux Foundation project and part of the High Performance Software Foundation.

Explore the project ↗

Data interface

PDI

PDI decouples applications from data handling libraries. Code annotations and an external specification organise parameter reading, initialisation, post-processing, output, visualisation, fault tolerance, logging, coupling and simulation ensembles.

Explore the project ↗

Collaborative visualisation

TiledViz & VRWall

TiledViz arranges results in a mosaic for comparison. Together with VRWall, it forms the HIVE-SA service for collaborative visualisation on screen, on a display wall or in mixed reality.

Explore HIVE-SA ↗

Computing workflows

YML

YML describes parallel applications using the YvetteML workflow language, independently of the underlying environment: grids, peer-to-peer systems or metacomputing.

Explore the project ↗