Jobs

We expect to open about 20 positions for PhD students, postdocs, and engineers. Most of these positions will be opened in 2021, a few more in 2022.

All open positions will be published on EURAXESS and on national and local platforms. In addition we will give an overview here.

Currently open positions

PhD student - Scalable domain decomposition preconditioners for large-scale cardiac reaction-diffusion models

WP5. Location: Pavia

The effective solution of the PDE systems employed in MICROCARD on HPC architectures will require highly scalable iterative solvers and preconditioners. In order to fully exploit the pre-exascale and exascale parallel machines targeted by this project, the PhD student will construct, analyze and implement scalable domain decomposition multilevel preconditioners for large-scale cardiac reaction-diffusion models. This project will also study the solvers robustness with respect to complex cardiac geometries and high-order discretizations. The parallel scalability of these preconditioners will exploit modern GPUs and hybrid computing architectures.

The official job posting is here on page 19 of the Call for applications.

Deadline for applications: June 24, 2021.

Contact: Professor Luca Pavarino

PhD student - Runtime resources and heterogeneity management

WP6. Location: Bordeaux

Starting date: October 2021

The software built in the MICROCARD project is aimed at exascale supercomputers. Targeting such big machines introduces many problems. Some are due to software libraries that may not scale to the required size. Exascale architectures will also face the same problems current supercomputers face, but on a larger scale: exascale computers are expected to consume several tens of MegaWatt. One of the main challenges of exascale developers is therefore to reduce the energy consumption of their code.

The goal of this PhD thesis is to work on techniques that reduce the energy consumption of the application, in particular by taking energy consumption into account in task scheduling algorithms. In order to be easily adapted to exascale machines, the code developed in MICROCARD will be implemented on top of StarPU. StarPU is a task-based runtime system where the application is written as a task graph where data dependencies determine the execution. StarPU provides mechanisms to handle data transfers and coherency. As a consequence, the user does not need to handle the underlying architecture: the runtime is in charge of task placement, data movement and so on. StarPU offers many scheduling algorithms to improve the performance of the application. However, they do not consider energy consumption.

The PhD student will take part in proposing models and scheduling algorithms for StarPU. The models and algorithms must consider both performance and energy consumption. They should also adapt to the target platform. More specifically, the scheduler must be able to place tasks by considering the architecture characteristics and data locality (in order to prevent excessive data movement) for heterogeneous architectures that include GPUs and other accelerators. Then, the models will be extended to account for techniques like power capping which reduce the power consumption but may impact performance. As a consequence, we will consider dynamic power capping in order to target only the tasks which are least affected, for example because they are not on the critical path of the execution.

Finally, another aspect tackled by the project is fault tolerance. As the number of components will increase, the number of failures occurring on an exascale machine will increase as well. Fault tolerance will be handled in another part of the project. However, the failures and the fault tolerance techniques will also affect the energy consumption. In fact, handling failures frequently will reduce the amount of work that is lost when a failure happens, and thus save energy, but the extra work needed to allow recovery will increase the energy consumption. As a consequence, the PhD student will study the impact of fault tolerance techniques on the energy consumption and will extend the model to account for fault tolerance.

Main activities
  1. Propose models which account for both performance and energy consumption
  2. Based on the aforementioned models, design scheduling algorithms that are able to find the best trade-off between performance and power consumption.
  3. Add power saving techniques such as dynamically adapting power capping.
  4. With the help and collaboration of the other members of the project, adapt the proposed models to the target code.
  5. Study the impact of fault tolerance techniques on the power and energy consumption.

Requirements/experience
  • Fluency in english
  • Parallel Programming (MPI, OpenMP, Cuda)
  • Programming languages (C, C++)
  • Compilation tools (make, cmake, ...)
  • Linux environment
  • Programming on or using a parallel machine

For information please contact Prof. Denis Barthou at the STORM team of Inria Bordeaux - Sud-Ouest.

PhD student - Discretization of a cell-by-cell model of electrocardiology

WP3. Location: Bordeaux.

The subject of the thesis aims at proposing and studying spatial discretization methods for the problem of numerical simulation of a three-dimensional model of a large group of cardiac cells. These methods will be developed in conjunction with time integration schemes, taking into account the techniques of programming, parallel computing and resolution of linear systems that will be studied in the other workpackages of the MICROCARD project, and ultimately in order to use exascale supercomputers. The numerical model should allow to study various medical questions.

Building on previous work, we plan to compare the approach of solving the electrostatic equation in the whole domain at each instant with the approach of deriving a Steklov-Poincaré operator which allows to write the model as a non-local reaction diffusion equation posed on the cell membrane. These approaches do not offer the same possibilities in terms of temporal discretization, for example. We will study in particular finite volume methods, because they explicitly take into account the non-standard transmission conditions on complex interfaces.

To reach the large number of cardiac cells required, it will be necessary to use vastly parallel com- puting, jointly with the other partners of MICROCARD. The problem provides natural domain decompositions, but it will be necessary to study these in order to define whether they are actually adapted to practical computing.

The candidate will have a background in general applied mathematics including a good knowledge of systems of partial differential equations (PDE). He or she should know at least one method of discretization of PDEs, among finite differences, finite elements or finite volumes, and its numerical analysis. She or he should have experience in programming and scientific computing in any practical language.

The candidate should be curious and interested in the applications of mathematics, in particular by numerical applications. In addition to oral and written communication skills in French and English, he or she will have to show ability to work in a multidisciplinary and international environment including computer scientists, biologists and physicians, and partners from six European countries.

For information please contact Prof. Yves Coudière at the Carmen team of Inria Bordeaux - Sud-Ouest.

Expired offers

Engineer - Task parallelization of a cardiac simulation code

WP2. Location: Bordeaux.

The detailed meshes of cardiac tissue that this project requires will have unprecedented size and an unprecedented level of parallelism. To run simulations efficiently, massive parallellism is required and due to the large scale of the simulation, the execution has to be resilient to possible faults and requires a checkpoint/restart strategy.

The engineer will be in charge of the parallelization of the code. This parallelization will rely on MPI and StarPU [1]. More particularly, the engineer will have to write the parallelism as a parallel task graph, optimize it and evaluate its performance. Lastly, an evaluation of the method for partial checkpointing based on such task graph will be conducted. The different steps during this mission are:

  1. Parallelization in StarPU+MPI of the OpenCarp simulation code;
  2. Adaptation to a newly developed fault-resilient version of StarPU; and
  3. Maintenance of the parallelization scheme as the code is modified by others to handle heart models with sub-cellular resolution.

PhD - Code generation for heterogeneous architectures

WP6. Location: Strasbourg.

The recruited PhD student will participate to a high-level compiler project that aims at building a bridge from a model representation convenient for ionic model experts to an optimized parallel heterogeneous implementation. It will exploit both target architecture resources and properties of the scientific problem (computation patterns, resilience to approximation). More precisely, the PhD student will research, design and participate to the implementation of the compiler infrastructure to translate an equational formulation extended with domain-specific information, to a code that aims to be efficient in both execution time and energy dissipation. Our objective is (1) to maximize productivity by allowing users to express the scientific problem rather than the implementation details and (2) to maximize flexibility. Our strategy is to rely on a dedicated compiler front end and on new research extending state-of-the-art code generation and runtime techniques to statically and dynamically optimize the application.

Engineer - Compilation/HPC

WP6. Location: Strasbourg.

The recruited engineer will participate to a high-level compiler project that aims at building a bridge from a model representation convenient for ionic model experts to an optimized parallel heterogeneous implementation. It will exploit both target architecture resources and properties of the scientific problem (computation patterns, resilience to approximation). More precisely, the project is about designing the compiler infrastructure to translate an equational formulation extended with domain-specific information, to a code that aims to be efficient in both execution time and energy dissipation. Our objective is (1) to maximize productivity by allowing users to express the scientific problem rather than the implementation details and (2) to maximize flexibility. Our strategy is to rely on a dedicated compiler front end and on new research extending state-of-the-art code generation and runtime techniques to statically and dynamically optimize the application.

Engineer - Mesh generation of cardiac meshes at cellular scale

WP7. Location: Bordeaux.

The MICROCARD project will require large and detailed meshes of cardiac tissue structure to perform simulations on. The engineer will be in charge of the development of the open source toolchain for the generation of 3D tetrahedral meshes for the project test cases. Starting from segmented data (voxels labeled as vessels, myocyte, fibroblast…) provided by project partners, this person will develop robust tools for:

  1. Building tetrahedral meshes from 3D image voxels;
  2. Data filtering and cleaning;
  3. Explicit discretization of cellular domains by isovalue discretization and mesh improvement and adaptation (implementation within the parallel open source remesher ParMmg and the sequential remesher Mmg).

Research software engineer at Karlsruhe Institute of Technology

WP1. Location: Karlsruhe.

PhD student (f/m/d) "Computational analysis of electrogram genesis during atrial fibrillation using high performance computing" at Karlsruhe Institute of Technology

WP8. Location: Karlsruhe.

PhD student at Simula Research Laboratory

WP4+6. Location: Oslo.

The PhD student is expected to adopt modern techniques of HPC and performance optimization, as well as the latest developments in HPC hardware and middleware, to enable efficient simulation of cardiac electrophysiology based on a cell-by-cell approach. The research activities will be under supervision and assistance of senior staff at the HPC and ComPhy departments. The PhD student is also expected to actively collaborate with researchers at the other partners of the project. Writing scientific publications and software code, as well as disseminating/reporting the project’s research findings, are included in the responsibilities of the PhD position.

All applicants must hold a master's degree (or equivalent education) in a subject of computational science or computer science. The successful candidate must have solid knowledge of numerical methods for solving PDEs, parallel computing and programming. Expertise with computational electrophysiology is preferred. It is also expected that the successful candidate has good skills in scientific communication (both oral and written).

Future positions

The following positions are expected to be opened if all goes well.

Postdoc - Modelling of Atrial Fibrillation at a very Fine Scale

WP8. Location: Bordeaux, Starting: 1/1/2022

Atrial fibrillation (AF) remains difficult to treat as the recurrence rate after ablation remains high. This project will look at the influence of structural and electrical heterogeneity on AF at an unprecedented scale, both the triggering and maintenance.

The postdoc will create very high resolution atrial models incorporating shape, fibre architecture, fibrosis and electrical remodelling data. A major challenge will be working with the large datasets produced, including their analysis and visualization. The person for this position is expected to have a strong knowledge of both computer modelling/numerical methods and electrophysiology, with a proficiency in analyzing data.

For information please contact Dr Edward Vigmond at IHU Liryc.

Latest news

Wednesday 14 April 2021

Today the German BMBF confirmed that the project will be co-funded from their side. The other five national funding agencies did so before, so now we are sure that the project is completely funded.


more news

Agenda

Monday 14 June

meeting on imaging data at 14:00

Tuesday 22 June

WP2+6 meeting at 14:00

Monday 21 to Friday 25 June

FIMH meeting

29th International Meshing Roundtable


full agenda

website powered by Dutch windmills • no cookies • all browsers welcome