Cédric Chevalier works in a CEA team specialized in parallel computing for numerical simulation. His main interests are combinatorial scientific computing and sparse linear algebra.
Main research topics
Partitioning
Partitioning problems arise notably for load-balancing or ordering. These combinatorial problems are usually solved through numbers, vectors of numbers, graphs, or mesh partitioning.
Two Ph.D. theses have been completed in this area, and a third one is ongoing, producing the software Coupe.
Linear Algebra
The focus is on sparse linear algebra and iterative methods for solving large linear systems. Works are mainly about implementing and composing linear solvers in the Alien software.
Performance and numerical accuracy
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.
Other interests
High-performance computing
How to efficiently exploit supercomputers is an arduous task. Mini-applications make it possible to understand how to deal with new architectures. Internships help a lot with this activity.
Programming technics
New programming languages and paradigms promise more robust and efficient codes. Evaluating them for scientific computing is essential. It is done with mini-applications and also specific internships. The Rust language is particularly of interest.
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.