Stage rémunéré : Développement de noyaux GPUs pour le code open-source hawen
Contract type : Fixed-term contract
Level of qualifications required : Graduate degree or equivalent
Fonction : Internship Research
Context
L’objectif de ce stage est de développer des noyaux GPUs pour le code open-source hawen (https://ffaucher.gitlab.io/hawen-website/, [3]) de l’équipe Inria Makutu. Le code est utilisé pour simuler la propagation d’ondes mécaniques dans des milieux tels que la Terre et le Soleil. Il sert également pour les problèmes d’imagerie, c’est à dire la reconstruction des propriétés physiques d’un milieu à partir de mesures d’ondes se propageant dans celui-ci. La discrétisation des équations d’ondes utilise la méthode HDG (“Hybridizable Discontinuous Galerkin”) qui est particulièrement efficace pour des ordres de polynomes élevés et, contrairement à d’autres approches plus standards, impliquent de nombreuses opérations de multiplication de matrices denses, ainsi que l’inversion de
ces matrices.
Actuellement, le code utilise uniquement le parallélisme sur CPUs, en combinant MPI et OpenMP.
Il a été utilisé sur plusieurs milliers de CPUs, permettant notamment de simuler la propagation d’ondes à l’intérieur du Soleil entier. L’ajout de la parallélisation sur GPUs des opérations sur les matrices denses devraient permettre d’améliorer les performances, e.g., [4, 5].
1] T. Deakin and T. Mattson, Programming your GPU with OPENMP, The MIT Press, Cambridge, Massachusetts, first ed., 2023.
[2] M. Fatica and G. Ruetsch, CUDA Fortran for Scientists and Engineers, ELSEVIER, first ed., 2009.
[3] F. Faucher, hawen: time-harmonic wave modeling and inversion using hybridizable
discontinuous Galerkin discretization, Journal of Open Source Software, 6 (2021, https://ffaucher.gitlab.io/hawen-
website/).
[4] A. Klöckner, T. Warburton, J. Bridge, and J. S. Hesthaven, Nodal discontinuous Galerkin methods on graphics processors, Journal of Computational Physics, 228 (2009), pp. 7863–7882.
[5] A. Klöckner, T. Warburton, and J. S. Hesthaven, High-order discontinuous Galerkin methods by GPU metaprogramming, in GPU Solutions to Multi-scale Problems in Science and Engineering, Springer, 2013, pp. 353–374.
Main activities
Les objectifs de stage sont les suivants :
- L’étudiante/étudiant devra être en mesure de comprendre les grandes étapes de la méthode HDG, afin de repérer quelles sections dans le code seront le plus propices à une parallélisation sur GPUs.
L’étudiante/étudiant proposera une stratégie de parallélisation sur GPUs. - Dans un premier temps, on utilisera le standard OpenMP 5, [1], pour voir quelles parties peuvent être accélerées. Dans un second temps, on envisagera une implémentation directe en Cuda Fortran [2] pour contrôler encore
plus finement les optimisations (transferts asynchrones, etc...) - Validation des performances avec un passage à l’échelle sur grappe de calcul et comparaison des
approches OpenMP 5 et Cuda. - Documentation des développements et de leurs utilisations.
Skills
La personne recherchée doit avoir de solides connaissances en calcul haute-performance à la fois sur CPU (MPI, OpenMP, SIMD) mais surtout une connaissance approfondie de la parallélisation sur GPU (Cuda, OpenCL ou RocM).
Il est attendu qu’elle sache profiler et d’optimiser de tels codes.
Elle devra aussi être capable de lire des articles scientifiques en anglais ainsi que produire un rapport d’avancement.
Il est par conséquent fortement recommandé d’être à l’aise avec la communication en anglais.
Benefits package
- Restauration subventionnée
- Transports publics remboursés partiellement
Remuneration
SMIC
General Information
- Theme/Domain :
Earth, Environmental and Energy Sciences
Software engineering (BAP E) - Town/city : PAU
- Inria Center : Centre Inria de l'université de Bordeaux
- Starting date : 2025-03-01
- Duration of contract : 6 months
- Deadline to apply : 2024-12-31
Warning : you must enter your e-mail address in order to save your application to Inria. Applications must be submitted online on the Inria website. Processing of applications sent from other channels is not guaranteed.
Instruction to apply
Merci d'envoyer CV et lettre de motivation
Defence Security :
This position is likely to be situated in a restricted area (ZRR), as defined in Decree No. 2011-1425 relating to the protection of national scientific and technical potential (PPST).Authorisation to enter an area is granted by the director of the unit, following a favourable Ministerial decision, as defined in the decree of 3 July 2012 relating to the PPST. An unfavourable Ministerial decision in respect of a position situated in a ZRR would result in the cancellation of the appointment.
Recruitment Policy :
As part of its diversity policy, all Inria positions are accessible to people with disabilities.
Contacts
- Inria Team : MAKUTU
-
Recruiter :
Faucher Florian / florian.faucher@inria.fr
About Inria
Inria is the French national research institute dedicated to digital science and technology. It employs 2,600 people. Its 200 agile project teams, generally run jointly with academic partners, include more than 3,500 scientists and engineers working to meet the challenges of digital technology, often at the interface with other disciplines. The Institute also employs numerous talents in over forty different professions. 900 research support staff contribute to the preparation and development of scientific and entrepreneurial projects that have a worldwide impact.