Cédric Chevalier travaille dans une équipe de R&D du CEA la spécialité est le calcul parallèle pour la simulation numérique à grande échelle.
Ses principaux centres d’intérêts sont le calcul combinatoire, en particulier les problèmes de partitionnement, de maillage, de graphe ou de nombres ; et les algorithmes d’algèbre linéaire creuse.
Principaux thèmes de recheche
Partitionnement
Pour les problèmes de répartition de charge ou de numérotation. Ces problèmes combinatoires sont en général traités sous la forme de problèmes de partitionnement de nombres, de vecteurs de nombres, de graphes ou de maillages.
Deux thèses ont été conduites sur ce thème et une troisième est en cours. Le logiciel Coupe est le fruit de ses travaux.
Algèbre linéaire
Plus précisément l’algèbre creuse et les méthodes itératives pour la résolution de grands systèmes linéaires. Les travaux portent avant tout sur l’implantation et la composition des logiciels de résolution, dans le cadre du logiciel Alien.
Performance et précision numérique
Les optimisations logicielles et matérielles autour des calculs flottants peuvent changer les résultats. L’étude de ces changements et comment les gérer a donné lieu à une thèse, dont est issu le logiciel Shaman.
Autres centres d’intérêts
Calcul haute performance
La bonne exploitation des ressources des calculateurs est cruciale. Par l’étude de mini-applications, il est possible de comprendre comment améliorer l’utilisation des nouvelles architectures. Cette activité donne lieu à de nombreux stages.
Techniques de programmation
De nouveaux langages et paradigmes de programmation voient le jour, promettant des codes plus robustes et plus performants. Leur évaluation dans un contexte de calcul scientifique est important et donne lieu à des stages. En particulier l’écosystème Rust fait l’objet d’un suivi approfondi.
ACM Transactions on Mathematical Software, Volume 48, Issue 4, 2023
abstract
Abstract
Floating-point numbers represent only a subset of real numbers. As such, floating-point arithmetic introduces approximations that can compound and have a significant impact on numerical simulations. We introduce encapsulated error, a new way to estimate the numerical error of an application and provide a reference implementation, the Shaman library. Our method uses dedicated arithmetic over a type that encapsulates both the result the user would have had with the original computation and an approximation of its numerical error. We thus can measure the number of significant digits of any result or intermediate result in a simulation. We show that this approach, although simple, gives results competitive with state-of-the-art methods. It has a smaller overhead, and it is compatible with parallelism, making it suitable for the study of large-scale applications.