Introducing Moldable Tasks in OpenMP - Archive ouverte HAL
Communication Dans Un Congrès Année : 2023

Introducing Moldable Tasks in OpenMP

Résumé

This paper introduces a new approach to handle implicit parallelism in library functions. If the library already utilizes a thirdparty programming model like OpenMP, it may run in parallel. Otherwise, if the library remains sequential, OpenMP directives in client code cannot be used for direct parallelization. To express implicit parallelism and, in the meanwhile, dynamically adjust the parallel degree of a task when its starts, we propose to use moldable tasks. We handle this by introducing a new construct called taskmoldable that generates multiples tasks from a single function call and an iteration space. For the Lapack Cholesky factorization algorithm, our taskmoldable directive allows simple code annotation to express parallelism between tiles and improves programmability. Performance results on a beamforming application indicates that our moldable implementation is slightly faster by 5% in mean, than a parallel execution achieved with Intel MKL.
Fichier principal
Vignette du fichier
main.pdf (845.83 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-04409117 , version 1 (22-01-2024)

Licence

Identifiants

Citer

Pierre-Étienne Polet, Ramy Fantar, Thierry Gautier. Introducing Moldable Tasks in OpenMP. IWOMP 23 - International Workshop on OpenMP, Sep 2023, Bristol, UK, United Kingdom. pp.51-65, ⟨10.1007/978-3-031-40744-4_4⟩. ⟨hal-04409117⟩
43 Consultations
66 Téléchargements

Altmetric

Partager

More