INRIA Bordeaux Sud-Ouest,
200 avenue de la Vieille Tour
33405 Talence Cedex, France
1 avenue du Dr A. Schweitzer
33402 Talence Cedex, France
Phone: +33/0 524 574 116
I'm professor in Computer Science at Bordeaux INP.
My fields of interest in research are optimization, compilation for high
performance computing applications and interactions with runtime
systems. In particular, I am interested in algorithm recognition
applied to optimization, high level languages for HPC, compilation/optimization for parallel
machines and performance analysis. The word cloud is made of the words used in the title of my publications.
My fields of interest in teaching are, among others, architecture, programming languages, compilation and parallelism.
I'm teaching at the the ENSEIRB/MATMECA
engineer school and I'm the head of the Computer Science
department at ENSEIRB-MATMECA.
I am working on Supports and Algorithms for High Performance Numerical Applications
in LaBRI (Computer Science Department)
, and managing the Inria STORM
My teaching pages can be found at ENSEIRB-MATMECA moodle web site
. My teaching schedule is
. Both web sites require an account at ENSEIRB-MATMECA and are in French.
All software of STORM team
can be found in its page. I'm particularly involved in the development of:
AFF3CT: A Fast Forward Error Correction Toolbox. AFF3CT is an Open-source software (MIT license) dedicated to the Forward Error Correction (FEC or channel coding) simulations. It is written in C++11 and it supports a large range of codes: from the well-spread Turbo codes to the very new Polar codes including the Low-Density Parity-Check (LDPC) codes. A particular emphasis is given to the simulation throughput performance (hundreds of Mb/s on today's CPUs) and the portability of the code.
PARCOACH: Supercomputing plays an important role in several innovative fields, speeding up prototyping or validating scientific theories. However, supercomputers are evolving rapidly with now millions of processing units, posing the questions of their programmability. Despite the emergence of more widespread and functional parallel programming models, developing correct and effective parallel applications still remains a complex task. As current scientific applications mainly rely on the Message Passing Interface (MPI) parallel programming model, new hardwares designed for Exascale with higher node-level parallelism clearly advocate for an MPI+X solutions with X a thread-based model such as OpenMP. But integrating two different programming models inside the same application can be error-prone leading to complex bugs – mostly detected unfortunately at runtime. The PARallel COntrol flow Anomaly CHecker, aims at helping developers in their debugging phase. It combines static and dynamic analyses to detect misuse of collectives in parallel applications.
I was previously involved in the development of the following softwares:
a library for Fuzzy Array Dataflow Analysis. The goal of this library
is to provide compiler independent functions for performing precise
instance-wise dataflow analysis on arrays and scalars. The analysis
can be made either directly from C files, from an abstract syntax tree
(built with library functions) or dataflow constraints. The software
licence is GPL.
- MAQAO: MAQAO is a
Modular Assembly Quality Analyzer and Optimizer. The goal of the tool
is to give the developper an estimation of the gap between the
performance of a code and its peak performance. The estimation is
based on a static performance model and can be completed with
execution profiles. The software is available on demand and co-developped with
Exascale lab. It is part of
- X-Language: X-Language is a pragma language for the compact representation of multiple versions. By annotating C code with these pragmas, the user can describe multiple optimization sequences. The software is GPL.
Current PhD students
A. Cassagne (with IMS) Parallelization and Code Generation for Error Correcting Codes from Factor Graphs.
V.-M. Nguyen. (with CEA) Optimisation automatique des codes parallèles à l'aide de communications asynchrones
C. T. Aitkaci (with ATOS/Bull) Analysis and optimizations for partitioned global address space based HPC applications.
B. Coye (with Ubisoft) Ordonnancement dynamique de graphe de tâches par composition, co-directed with R.Namyst
Past PhD students
. Optimization of data allocation for HPC applications on heterogeneous memory architectures
, 2019, U. Bordeaux PhD thesis, co-directed with P. Carribault (CEA). Now postdoc at NERSC