Implementing multifrontal sparse solvers for multicore architectures with Sequential Task Flow runtime systems
Résumé
To face the advent of multicore processors and the ever increasing complexity of hardware architectures, programming models based on DAG parallelism regained popularity in the high performance, scientific computing community. Modern runtime systems offer a programming interface that complies with this paradigm and powerful engines for scheduling the tasks into which the application is decomposed. These tools have already proved their effectiveness on a number of dense linear algebra applications. This paper evaluates the usability and effectiveness of runtime systems based on the Sequential Task Flow model for complex applications , namely, sparse matrix multifrontal factorizations which feature extremely irregular workloads, with tasks of different granularities and characteristics and with a variable memory consumption. Most importantly, it shows how this parallel programming model eases the development of complex features that benefit the performance of sparse, direct solvers as well as their memory consumption. We illustrate our discussion with the multifrontal QR factorization running on top of the StarPU runtime system. ACM Reference Format: Emmanuel Agullo, Alfredo Buttari, Abdou Guermouche and Florent Lopez, 2014. Implementing multifrontal sparse solvers for multicore architectures with Sequential Task Flow runtime systems
Mots clés
Performance Additional Key Words and Phrases: Sparse direct solvers
G4 [Mathematical Software] General Terms: Algorithms
G13 [Numerical Analysis]: Numerical Linear Algebra
communication-avoiding
multicores
runtime systems
Categories and Subject Descriptors: D13 [Programming Techniques]: Concurrent Programming
memory-aware
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...