A massively parallel implementation of multilevel Monte Carlo for finite element models

Santiago Badia, Jerrad Hampton, Javier Principe

Research output: Contribution to journalArticleResearchpeer-review


The Multilevel Monte Carlo (MLMC) method has proven to be an effective variance-reduction statistical method for Uncertainty Quantification (UQ) in Partial Differential Equation (PDE) models, combining model computations at different levels to create an accurate estimate. Still, the computational complexity of the resulting method is extremely high, particularly for 3D models, which requires advanced algorithms for the efficient exploitation of High Performance Computing (HPC). In this article we present a new implementation of the MLMC in massively parallel computer architectures, exploiting parallelism within and between each level of the hierarchy. The numerical approximation of the PDE is performed using the finite element method but the algorithm is quite general and could be applied to other discretization methods. The two key ingredients of the implementation are a good processor partition scheme together with a good scheduling algorithm to assign work to different processors. We introduce a multiple partition of the set of processors that permits the simultaneous execution of different levels and we develop a dynamic scheduling algorithm to exploit it. The problem of finding the optimal scheduling of distributed tasks in a parallel computer is an NP-complete problem. We propose and analyze a new greedy scheduling algorithm to assign samples and we show that it is a 2-approximation, which is the best that may be expected under general assumptions. On top of this result we design a distributed memory implementation using the Message Passing Interface (MPI) standard. Finally we present a set of numerical experiments illustrating its scalability properties.

Original languageEnglish
Pages (from-to)18-39
Number of pages22
JournalMathematics and Computers in Simulation
Publication statusPublished - Nov 2023


  • Computational statistics
  • Geometric uncertainty
  • Multilevel Monte Carlo
  • Parallel programming
  • Stochastic partial differential equations
  • Uncertainty quantification

Cite this