1. MPI+X: task-based parallelisation and dynamic load balance of finite element assembly.
- Author
-
Garcia-Gasulla, Marta, Houzeaux, Guillaume, Ferrer, Roger, Artigues, Antoni, López, Victor, Labarta, Jesús, and Vázquez, Mariano
- Subjects
- *
TARDINESS , *DYNAMIC balance (Mechanics) , *DYNAMIC loads , *ALGEBRAIC equations , *PARTIAL differential equations , *COMPUTATIONAL mechanics , *PARALLEL programming - Abstract
The main computing phases of numerical methods for solving partial differential equations are the algebraic system assembly and the iterative solver. This work focuses on the first task, in the context of a hybrid MPI+X paradigm. The matrix assembly consists of a loop over the elements, faces, edges or nodes of the MPI partitions to compute element matrices and vectors and then of their assemblies. In a MPI+X hybrid parallelism context, X has consisted traditionally of loop parallelism using OpenMP, with different techniques to avoid the race condition, but presenting efficiency or implementation drawbacks. We propose an alternative, based on task parallelism using some extensions to the OpenMP programming model. In addition, dynamic load balance will be applied, especially efficient in the presence of hybrid meshes. This paper presents the proposed methodology, its implementation and its validation through the solution of large computational mechanics problems up to 16k cores. [ABSTRACT FROM AUTHOR]
- Published
- 2019
- Full Text
- View/download PDF