Léopold Cambier

at Stanford Continuing Studies

Schools

  • Stanford Continuing Studies

Expertise

Links

Biography

Stanford Continuing Studies

I did my Bachelor & Master (2010-2015) in Engineering at Université catholique de Louvain (Belgium). During that time, I spent 3 months at MIT working with Prof. Laurent Demanet on seismic imaging and full wave inversion. I did my master thesis with Prof. P.-A. Absil, working on Low-Rank Matrix Compression. In 2015 I moved to Stanford to start my Ph.D and started working with Prof. Eric Darve (Mechanical Engineering) on numerical linear algebra. I am now working on large sparse linear systems. We are trying to bridge the gap between direct methods (accurate, reliable but expensive) and preconditioners (cheap but complex to work with or very domain specific). We develop highly efficient incomplete factorization methods for large sparse linear systems, typically arising from PDE’s applications. And we combine this with paralle runtime systems. During my PhD, I did two interships (summers 2016 and 2017) at NVidia, working on cuDNN and cuBLAS. More recently I interned at Intel (summer 2019), working on reduce precision arithmetic for neural networks trainings.

Current Work

My current interests are the design of new, robust and fast sparse linear solver.

More precisely, we are trying to combine ideas for (sparse) direct solvers and fast algorithms. On one side, direct solvers use fill-reducing orderings (i.e., the Nested Dissection in most cases) to reduce fill-in during the factorization, and to exhibit parallelism in the operations. On the other side, fast algorithms use the fact that for a large class of linear systems, far-field interactions are typically low-rank. By introducing this idea, we are able to eliminate many more unknowns than usual, at a fraction of the cost. The result is an algorithm with a complexity much closer to O(n), able to solve large systems at a fraction of the cost of direct methods, while keeping most of they good properties. The algorithm works relatively well on SPD systems, and we are now focused on unsymmetric systems.

Alongside this, I am also interested in parallel algorithms and runtime systems. As algorithms get more and more complicated, “static” kinds of parallelism is harder and harder to use. Runtime systems provide a solution, where the system is now responsible in scheduling tasks, to maximize the use of the machines. We are trying to integrate those technologies in our code.

Read about executive education

Other experts

Looking for an expert?

Contact us and we'll find the best option for you.

Something went wrong. We're trying to fix this error.