Contributions à l'optimisation d'un motif algorithmique parallèle hiérarchique sur GPU pour la performance, la portabilité et la productivité

Cette thèse s'inscrit dans le contexte du calcul haute performance (HPC) à l'ère de l'exascale, où les supercalculateurs reposent sur des architectures hétérogènes dominées par les GPU. Le défi majeur est de concilier performance, portabilité et productivité (les « 3P ») dans le développement d'applications scientifiques, sans sacrifier la généricité ni la durabilité du code.Nous identifions un motif algorithmique récurrent basé sur un parallélisme hiérarchique avec allocations mémoire, défini comme Batched Kernels with Memory Allocations (BKMA). Ce motif apparaît dans de nombreux contextes, allant de la simulation numérique à l'inférence de modèles d'intelligence artificielle. L'objectif est de proposer une implémentation réutilisable, performante et portable, dotée d'une API productive et indépendante des détails matériels ou applicatifs, afin de simplifier le développement d'applications exascale.Notre approche repose sur le C++ moderne et sur le modèle de programmation SYCL, qui permet un code unique pour plusieurs architectures. Après avoir analysé les constructions parallèles de SYCL et leurs limites pour BKMA, nous introduisons plusieurs optimisations exploitant les propriétés matérielles et certaines hypothèses algorithmiques. Une contribution directe au standard SYCL est également proposée, renforçant la pertinence de ce travail pour la communauté HPC et ouvrant la voie à une adoption large.Nous introduisons une méthode originale d'évaluation de la simplicité d'utilisation (``productivité''), qui permet de comparer objectivement notre proposition avec des approches existantes. La validation s'appuie sur des expériences concrètes, incluant l'advection semi-lagrangienne de l'application GYSELA et un noyau de convolution 1D, comparés aux implémentations de PyTorch et oneDNN, démontrant à la fois la performance et la portabilité de notre approche.En conclusion, cette thèse apporte des contributions méthodologiques et techniques pour la conception de bibliothèques génériques et durables en HPC.

Authors

Publication Details

Journal
theses.fr (ABES)
Published
2025-11-13
Primary Topic
Parallel Computing and Optimization Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Contributions à l'optimisation d'un motif algorithmique parallèle hiérarchique sur GPU pour la performance, la portabilité et la productivité

Aymeric Millan
theses.fr (ABES)
Parallel Computing and Optimization Techniques
article

Contributions à l'optimisation d'un motif algorithmique parallèle hiérarchique sur GPU pour la performance, la portabilité et la productivité

Aymeric Millan
article en

Abstract

Cette thèse s'inscrit dans le contexte du calcul haute performance (HPC) à l'ère de l'exascale, où les supercalculateurs reposent sur des architectures hétérogènes dominées par les GPU. Le défi majeur est de concilier performance, portabilité et productivité (les « 3P ») dans le développement d'applications scientifiques, sans sacrifier la généricité ni la durabilité du code.Nous identifions un motif algorithmique récurrent basé sur un parallélisme hiérarchique avec allocations mémoire, défini comme Batched Kernels with Memory Allocations (BKMA). Ce motif apparaît dans de nombreux contextes, allant de la simulation numérique à l'inférence de modèles d'intelligence artificielle. L'objectif est de proposer une implémentation réutilisable, performante et portable, dotée d'une API productive et indépendante des détails matériels ou applicatifs, afin de simplifier le développement d'applications exascale.Notre approche repose sur le C++ moderne et sur le modèle de programmation SYCL, qui permet un code unique pour plusieurs architectures. Après avoir analysé les constructions parallèles de SYCL et leurs limites pour BKMA, nous introduisons plusieurs optimisations exploitant les propriétés matérielles et certaines hypothèses algorithmiques. Une contribution directe au standard SYCL est également proposée, renforçant la pertinence de ce travail pour la communauté HPC et ouvrant la voie à une adoption large.Nous introduisons une méthode originale d'évaluation de la simplicité d'utilisation (``productivité''), qui permet de comparer objectivement notre proposition avec des approches existantes. La validation s'appuie sur des expériences concrètes, incluant l'advection semi-lagrangienne de l'application GYSELA et un noyau de convolution 1D, comparés aux implémentations de PyTorch et oneDNN, démontrant à la fois la performance et la portabilité de notre approche.En conclusion, cette thèse apporte des contributions méthodologiques et techniques pour la conception de bibliothèques génériques et durables en HPC.

theses.fr (ABES)
Openalex Percentile: Top 23%
Parallel Computing and Optimization Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.