Emmanuel Agullo (CONCACE)
Table of Contents
- 1. Home
- 2. Research
- 3. Publications
- 4. Software
- 5. CV
- 5.1. Professional history
- 5.2. Supervision of students and early-stage researchers
- 5.3. Supervision of technological development
- 5.4. Responsabilities
- 5.4.1. Member of conference scientific committees / Participation à des comités de lecture (conférence)
- 5.4.2. Guest Editor for Special Issue
- 5.4.3. Participation à des conseils ou commissions
- 5.4.4. Organisation de conférences
- 5.4.5. Organisation de mini-symposiums
- 5.4.6. Tâches d'intérêt collectif
- 5.5. Management
- 5.6. Teaching
- 5.7. Visibility
1. Home
1.2. Contact
Emmanuel Agullo
Inria Research Center at the University of Bordeaux
200 Avenue de la Vieille Tour
33405 Talence
+33 5 24 57 41 50
1.3. Interests
- Numerical linear algebra
- Task-based programming
- Numerical and parallel composability
1.4. Visit us
I'm part of the Bordeaux concace Team, located in the main building of the Inria Research Center at the University of Bordeaux, on Talence campus.
1.5. Internal (private)
2. Research
2.1. Objective
My main research objective is to study whether linear algebra algorithms and software can be written in a high-level fashion while achieving high-performance on modern supercomputers.
2.2. Motivation
My thesis is twofold:
- most advanced developments in numerical linear algebra do follow neither SoC principles nor even Elementary Algebra concepts.
- it is possible to revisit (at least some of) them in a more composable fashion.
I illustrate the discussion below with two structuring research axes I am working on.
2.3. Task-based programming as a SoC principle
The main motivation not to follow SoC principles in a HPC context is that tackling modern architectures requires optimizations at many levels. As a consequence, achieving high-performance of a given numerical algorithm on a target platform may be more naturally achieved by optimizing the design at a low-architectural level (MPI, threads, Cuda, …).
In the context of the Matrices Over Runtime Systems (MORSE) Associate Team, we have shown that we can achieve a performance competitive with algorithms and software optimized at a low architectural level. Furthermore, we have shown that this abstraction can leverage . All in all we have developed a robust linear algebra library relying on innovative runtime systems that can fully benefit from the potential of modern supercomputers.
The ANR MN SOLvers for Heterogeneous Architectures over Runtime systems (SOLHAR) and ANR PRCE SOLvers for Heterogeneous Architectures over Runtime systems, Investigating Scalability (SOLHARIS) projects have extended that to the case of irregular sparse direct algorithms. In the context of the Fast and Scalable Hierarchical Algorithms for Computational Linear Algebra (FastLA) Associate Team, we showed that the same abstraction could successfully be employed to design Fast Multipole Method (FMM) and other hierarchically low-ranl algorithms.
2.4. Revisiting mathematical expressions of numerical linear algebra
Maybe more surprisingly for a field that contains "linear algebra" in its name, it may be debatable whether advanced developments in numerical linear algebra follow Elementary Algebra concepts.
In the context of the ANR Algebraic and geometric domain decomposition for subsurface / groundwater flows DEDALES, Louis Poirel's PhD thesis showed that we could more efficiently compose Abstact Schwarz methods by redesigning them at a higher mathematical level. We are currently investigating how to do so for Krylov subspace methods and hierarchically low-rank algorithms.
3. Publications
4. Software
As discussed in Research, according to Wikipedia, Numerical Linear Algebra was developed by computer pioneers in order to apply the earliest computers to problems in continuous mathematics (Wikipedia). It is therefore not surprising that the numerical linear algebra community as its whole devotes a significant amount of his work to software design to assess their investigations. The concace team follows this philosophy. Here is my involvement.
4.1. compose: main current software project
My main current research interest is in the parallel and numerical
composability of numerical algorithms, especially linear algebra
algorithms. The ultimate goal is to integrate this research into the
compose
parallel numerical linear algebra software suite. This
on-going development extends maphys++ software to handle a
larger range of numerical algebra routines. It will be used to assess
the numerical and parallel composability of a wide range of linear
algebra algorithms.
This project shall be central for both the concace team in general and my personal research perspectives in particular. My personal contribution in this central project is in terms of design. Most of the actual software development is performed by Gilles Marait, sed / concace research engineer.
4.2. Software environment
4.2.1. guix and guix-hpc: GNU Guix for High-Performance Computing
I am strongly involved in the guix-hpc initiative to ensure robust of deployment of scientific sofware on modern supercomputers, an important concern for reproducibility in HPC.
4.2.2. elementaryx: Elementary set up for research and development in scientific computing
I'm developping and maintaining a tentative set up for research and development in scientific computing. This setup consists in an elementary coupling between guix and emacs. This is the elementaryx project.
4.3. Other scientific software projects
4.3.1. maphys++
maphys++ is the successor of maphys. It is a complete redesign based on the mathematical results of Louis Poirel's PhD thessis showing how to design composable Abstact Schwarz methods.
I have co-supervised its design and development. Most of the actual software development was done by Gilles Marait.
4.3.2. chameleon
chameleon was born in the context of the Matrices Over Runtime Systems (MORSE) Associate Team (see The Chameleon solver is born). It proved that we can write dense linear algebra algorithms and software at a high level with respect to the architecture. This abstraction allowed to join the respective expertise of researchers in linear algebra with that of researchers in runtime systems and scheduling. The key abstraction was the design of HPC numerical algorithms as a Directed Acyclic Graph (DAG) of tasks.
I used to be the leader of the project, as well as one of the main developers and maintainers, especially in the first years. This project has since attracted much more attention and most of the maintenance is now ensured by colleagues from topal and sed, especially Mathieu Faverge and Florent Pruvost, respectively.
4.3.3. qrmumps
qrmumps is a software package for the solution of sparse, linear systems on multicore computers. It implements a direct solution method based on the QR factorization of the input matrix. The qrmumps project is led by Alfredo Buttari (IRIT).
After we got success in expressing dense linear algebra algorithms at a high-level of expression through task-based programming, we decided to investigate whether we could do so with more irregular algorithms, such as the factorization of sparse matrices.
My main contribution to the project has been the help to its task-based design. Most of this joint work was done in the context of the ANR MN SOLvers for Heterogeneous Architectures over Runtime systems (SOLHAR) and ANR PRCE SOLvers for Heterogeneous Architectures over Runtime systems, Investigating Scalability (SOLHARIS) projects.
4.3.4. scalfmm
scalfmm is a C++ library that implements a kernel independent Fast Multipole Method (FMM). The scalfmm project is led by Olivier Coulaud.
After the success of the early developments of Matrices Over Runtime Systems (MORSE) Associate Team and of the design of the prototype of what would become chameleon, the Fast and Scalable Hierarchical Algorithms for Computational Linear Algebra (FastLA) Associate Team was started to develop fast and scalable hierarchical algorithms. The research of both associated teams was strongly connected, especially regarding the design of task-based algorithms. It was decided to develop a task-based version of the FMM.
My main contribution to the scalfmm project has been the help to its task-based design. Most of this joint work was done in the context of the Fast and Scalable Hierarchical Algorithms for Computational Linear Algebra (FastLA) Associate Team.
4.4. Educational purpose dense linear algebra solver
I'm also involved in the development and maintenance of the mini-chameleon educational-purpose dense linear algebra solver. As provided, it essentially provides drivers while the actual computational routines remain to be completed. The goal is to implement a dense matrix-matrix product and an LU factorization, first targeting a sequential implementation, followed by an SIMD version, a shared-memory OpenMP one, a distributed-memory MPI one, an MPI+OpenMP one, a runtime-based (starpu) one, and a GPU-accelerated one.
5. CV
5.1. Professional history
- 2022-…: Inria Research Scientist @ Inria in the concace project-team
- 2010-2022: Inria Research Scientist @ Inria in the hiepacs project-team (CR2 from 2010-2012 and then CR1 since 2012)
- 2009: Post-doctoral Researcher @ Innovative Computing Laboratory (ICL) (University of Tennessee Knoxville (UTK)) (supervisor: Jack Dongarra)
- 2005-2008: PhD Candidate @ LIP (ENS Lyon) On the Out-Of-Core Factorization of Large Sparse Matrices (director: Jean-Yves L'Excellent, co-advisor: Abdou Guermouche)
5.2. Supervision of students and early-stage researchers
5.2.1. Post-doctoral researchers
- Nick Schenkels, December 2018 - December 2020, co-advised with Luc Giraud and Franck Cappello (Argonne National Laboratory (ANL))
- Cristóbal Samaniego Alvarado, December 2017 - April 2019, co-advised with Luc Giraud and Stephane Lanteri (atlantis)
- Ian Masliah, November 2016 - April 2018, co-advised with Alfredo Buttari (IRIT) and Abdou Guermouche
- Matthieu Kuhn, January 2015 - April 2018, co-advised with Luc Giraud and Stephane Lanteri (atlantis)
- Luka Stanisic, 2015 - 2017, co-advised with Samuel Thibault (storm)
- Yuval Harness, December 2014 - June 2017, Fast and Scalable Hierarchical Algorithms for Computational Linear Algebra (FastLA) Associate Team, co-advised with Eric Darve (Stanford University) and Luc Giraud
- Emrullah Fatih Yetkin, March 2014 - August 2016, co-advised with Luc Giraud
5.2.2. PhD
- Antoine Jego, Advanced task-based programming models for scalable linear algebra operations, 2023, co-advisor (33%, with Alfredo Buttari (IRIT) and Abdou Guermouche), emditt
- Romain Peressoni, Large Scale Multidimensional Scaling for the Study of Biodiversity, 2023, co-director (33%, with Olivier Coulaud and Alain Franc), edmi ub
- Marek Felsoci, Fast solvers for high-frequency aeroacoustics, 2023, co-advisor (33%, with Luc Giraud Guillaume Sylvand), edmi ub
- Aurélien Falco, Bridging the Gap Between H-Matrices and Sparse Direct Methods for the Solution of Large Linear Systems, 2019, co-advisor (33%, with Luc Giraud and Guillaume Sylvand), edmi ub
- Louis Poirel, Algebraic Domain Decomposition Methods for Hybrid (direct/iterative) Solvers, 2018, co-director (50%, with Luc Giraud), edmi ub
- Suraj Kumar, Scheduling of Dense Linear Algebra Kernels on Heterogeneous Resources, 2017, co-advisor (25%, with Olivier Beaumont, Lionel Eyraud-Dubois and Samuel Thibault), edmi ub
- Stojce Nakov, On the design of sparse hybrid linear solvers for modern parallel architectures, 2015, co-director (33%, with Luc Giraud and Jean Roman), edmi ub
- Florent Lopez, Task-based multifrontal QR solver for heterogeneous architectures, 2015, co-advisor (33%, with Alfredo Buttari (IRIT) and Abdou Guermouche), emditt
- Mawussi Zounon, On numerical resilience in linear algebra, 2015, co-director (33%, with Luc Giraud and Jean Roman), edmi ub
5.3. Supervision of technological development
5.3.1. Engineers
- Cédric Castagnède
- Matthieu Lecouvez
- Yohan Lee-Tin-Yien
- Gilles Marait
- Julien Pedron
- Florent Pruvost
5.4. Responsabilities
5.4.1. Member of conference scientific committees / Participation à des comités de lecture (conférence)
- Compas 2024, Nantes (France), Committee Member
- ICPP 2022, held virtually, Multidisciplinary Track Committee Member (new committee)
- IPDPS'22, held virtually, System Software Track Member
- IPDPS'21, held virtually, System Software Track Member
- ISC 2021, held virtually, Workshops Committee Member
- ISC 2020, held virtually, Workshops Committee Member
- SC19, Denver (Colorado), USA, Algorithms Track Member
- ICPP 2018, Eugene (Oregon), USA, Algorithms Track Member
- PMAA'18, Zurich, Switzerland, Program Committee Member
- SC17, Denver (Colorado), USA, Algorithms Track Member
- SC16, Salt Lake City (Utah), USA, Algorithms Track Member
- IPDPS'14, Phoenix (Arizona), USA, Algorithms Track Member
- PMAA'14, Lugano, Switzerland, Program Committee Member
- IPDPS'13, Boston (Massachusetts), USA, Algorithms Track Member
- PMAA'12, London, UK, Program Committee Member
- PMAA'10, Basel, Switzerland, Program Committee Member
5.4.2. Guest Editor for Special Issue
5.4.3. Participation à des conseils ou commissions
- 2022-…: Member of the Commission de Développement Technologique (CDT) @ Inria Centre at the University of Bordeaux (intranet)
- 2016-…: Member of the LaBRI Commission Appels à Projets (head: Marc Zeitoun)
- 2015-2021: Inria Centre at the University of Bordeaux Scientific Correspondent for the Inria Director of European Partnerships
- 2010-2021: Member of the Commission des Moyens Informatiques - Recherche (CUMI-R) @ Inria Centre at the University of Bordeaux (hiepacs representatitve)
- 2017: Member of the Isabelle Attali Prize Jury
- 2016: Member of the Isabelle Attali Prize Jury
- 2016: Member of the Eligibility Jury for Researchers @ Inria Centre at the University of Bordeaux (membre du jury d'admissibilité du concours chargé de recherche)
- 2014: Member of the Eligibility Jury for Researchers @ Inria Centre at the University of Bordeaux (membre du jury d'admissibilité du concours chargé de recherche)
- 2006-2008: Member of the LIP laboratory council at ENS Lyon
5.4.4. Organisation de conférences
- Steering committee
- 2019-2024, Compas Représentant parallélisme (elected member)
- Conference Co-chair
- 2016, PMAA'16 Conference Co-Chair
- Program Committee Co-Chair
- Program Committee Track Co-Chair
- Local organizer
- 2011, Precond 2011, Bordeaux, France
- 2011, Euro-Par 2011, Bordeaux, France
- 2009, Scheduling for large-scale systems Worshop'09, Knoxville, USA
5.4.5. Organisation de mini-symposiums
- Task-based programming
- 2019: Task-based Programming for Scientific Computing: Runtime Support (8 talks) @ SIAM CSE'19, with Alfredo Buttari (IRIT) and Hatem Ltaief (KAUST)
- 2018: Task-based programming for scientific computing (8 talks) @ PMAA'18, with Alfredo Buttari (IRIT) and Hatem Ltaief (KAUST)
- 2016: Task-based Scientific, High Performance Computing on Top of Runtime Systems (8 talks) @ SIAM PP'16, with Alfredo Buttari (IRIT) and Abdou Guermouche
- 2015: Task-based Scientific Computing Applications (8 talks) @ SIAM CSE'15, with Hatem Ltaief (KAUST)
- 2014: Task-based solvers over runtime systems (4 talks) @ PMAA'14, with Luc Giraud and Jean Roman
- Resilience
- 2018: Resilience for Extreme Scale Computing (16 talks) @ SIAM PP'18, with George Bosilca (University of Tennessee Knoxville (UTK)), Christian Engelmann (Oak Ridge National Laboratory (ORNL)), Luc Giraud and Keita Teranishi (Sandia National Laboratories (SNL))
- 2018: Resilience in scientific computing (4 talks) @ PMAA'18, with Luc Giraud and Keita Teranishi (Sandia National Laboratories (SNL))
- 2017: Toward Resiliency via Numerical Remedies (8 talks) @ SIAM CSE'17, with Luc Giraud, Mike Heroux (Sandia National Laboratories (SNL)) and Keita Teranishi (Sandia National Laboratories (SNL))
- 2016: Resilience Toward Exascale Computing (24 talks) @ SIAM PP'16, with Luc Giraud, Mike Heroux (Sandia National Laboratories (SNL)), Franesco Rizzi (Sandia National Laboratories (SNL)) and Keita Teranishi (Sandia National Laboratories (SNL))
- 2015: Resilience in Numerical Simulations and Algorithms at Extreme Scale (16 talks) @ SIAM CSE'15, with Luc Giraud, Mike Heroux (Sandia National Laboratories (SNL)) and Keita Teranishi (Sandia National Laboratories (SNL))
- 2014: Toward resiliency for extreme scale applications (4 talks) @ PMAA'14, with Luc Giraud and Jean Roman
- Other themes (Autotuning, Manycore architectures)
- 2012: Linear algebra on manycore architectures @ PMAA'12, with Luc Giraud and Jean Roman
- 2010: Minisymposium on autotuning for matrix problems @ PMAA'10 , with Rich Vuduc (Georgia Tech)
5.5. Management
5.5.1. As a Project Leader
- International Initiative
- Region Initiative
- 2019-2023: CRNA HPC Scalable Ecosystem
5.5.2. As a Project Member, involved in proposal writing
- International Initiatives
- European Initiatives
- National Initiatives
- 2024-…: NumPEx Exa-Soft: HPC software and tools
- 2024-…: NumPEx Exa-MA: Methods and Algorithms for Exascale
- 2019-2024: ANR PRCE SOLvers for Heterogeneous Architectures over Runtime systems, Investigating Scalability (SOLHARIS)
- 2014-2017: ANR Algebraic and geometric domain decomposition for subsurface / groundwater flows DEDALES
- 2013-2017: ANR MN SOLvers for Heterogeneous Architectures over Runtime systems (SOLHAR)
- 2010-2014: ANR Blanc Resilience for exascale scientific computing (RESCUE), Project Member
- 2010-2014: ANR Blanc Building the future Of numerical methOdS for iTer (BOOST), Project Member (see also HiePACS Activity Report 2011)
- Regional Initiative
- Inria Initiative
5.5.3. As a Project Member, involved in execution but not in proposal writing
- European Initiatives
- 2019-2021: H2020 Energy Oriented Center of Excellence: toward exascale for energy (EoCoE-2)
- 2015-2018: H2020 Energy Oriented Center of Excellence: toward exascale for energy (EoCoE)
- 2010-2012: FP7 Marie-Curie ITN MyPlanet (see HiePACS 2010 activity report, Section 8.2.1)
- International Initiatives
5.6. Teaching
5.6.1. Vacations
Typical yearly teaching:
- Operating systems (24h), M1, Bordeaux University;
- High-performance numerical linear algebra (8h), 3A, Enseirb;
- Numerical algorithms (20h), 1A, Enseirb.
5.6.2. Summer Schools
- Co-Organizer (and Instructor)
- 2019: PRACE Automn School on High Performance Numerical Simulation (1 week) @ Inria (Bordeaux), Co-Organizer
- 2015: PRACE Parallel Linear Algebra (4 days) @ Maison de la Simulation/CINES (Montpellier), Co-Organizer
- 2014: PRACE Parallel Linear Algebra (3 days) @ Maison de la Simulation (Paris Saclay), Co-Organizer
- 2013: PRACE Parallel Linear Algebra (3 days) @ Maison de la Simulation (Paris Saclay), Co-Organizer
- 2011: Parallel Sparse Linear Algebra (1 week) @ Maison de la Simulation/Inria (Bordeaux), Co-Organizer
- Instructor
- 2014: 7th ITER International School (IIS 2014): High Performance Computing in Fusion Science, Aix-En-Provence, France
- 2011: Toward petaflop numerical simulation on parallel hybrid architectures, CEA-EDF-INRIA Summer School, Sophia Antipolis, France
5.7. Visibility
5.7.1. Exposés pléniers invités
- 2022: Algèbre linéaire numérique et parallèle pour l'analyse de données @ Rencontres annuelles 2022 Réseau Mexico, INRAE Cestas Gazinet (France)
5.7.2. Participation à des colloques sur invitation
- 2023: Reconciling high-performance computing with the use of third-party libraries? (video) @ The First Workshop on Reproducible Software Environments for Research and High-Performance Computing, Montpellier, France
- 2021: Resiliency in Numerical Algorithm Design for Extreme Scale Simulations Dagstuhl Seminar @ Dagstuhl, Germany
- 2019: Parallel Solution Methods for Systems Arising from PDEs @ CIRM, Marseille, France (slides)
- 2017: 9èmes Rencontres «Arithmétique de l'Informatique Mathématique» (RAIM 2017) @ ENS Lyon, France (slides)
- 2010: 4th ''Scheduling in Aussois'' Workshop, Aussois (France)
5.7.3. Jury de thèse
- Examinateur
- Bastien Vieuble, 2022, Raffinement itératif en précision mixte pour la résolution de systèmes linéaires creux de grande taille, Mathématiques Appliquées, Toulouse INP (Toulouse INP Léopold Escande 2022 prize)
- Lionel Boillot, 2014, Contributions to the mathematical modeling and to the parallel algorithmic for the optimization of an elastic wave propagator in anisotropic media, edsea
- Rapporteur (et Examinateur)
5.7.4. Project Reviewer
- International
- External Reviewer for the Natural Sciences and Engineering Research Council of Canada (NSERC) Discovery Grants competition (Canada)
- Regional
- Reviewer for the Labex CIMI
5.7.5. Distinctions
- Toulouse INP Léopold Escande Prize 2023 (to appear) for Antoine Jego's PhD (co-advisor)
- IEEE AICCSA 2011 Best Paper Award
- Vecpar 2010 Best Student (Henricus Bouwmeester) Paper Award