Parallel Locality and Parallelization Quality

Bernard Goossens 1, 2 David Parello 1, 2 Katarzyna Porada 1, 2 Djallal Rahmoune 1, 2
1 DALI - Digits, Architectures et Logiciels Informatiques
LIRMM - Laboratoire d'Informatique de Robotique et de Microélectronique de Montpellier, UPVD - Université de Perpignan Via Domitia
Abstract : This paper presents a new distributed computation model adapted to manycore processors. In this model, the run is spread on the available cores by fork machine instructions produced by the compiler , for example at function calls and loops iterations. This approach is to be opposed to the actual model of computation based on cache and predictor. Cache efficiency relies on data locality and predictor efficiency relies on the reproducibility of the control. Data locality and control reproducibility are less effective when the execution is distributed. The computation model proposed is based on a new core hardware. Its main features are described in this paper. This new core is the building block of a manycore design. The processor automatically parallelizes an execution. It keeps the computation deterministic by constructing a totally ordered trace of the machine instructions run. References are renamed, including memory , which fixes the communications and synchronizations needs. When a data is referenced, its producer is found in the trace and the reader is synchronized with the writer. This paper shows how a consumer can be located in the same core as its producer, improving parallel locality and parallelization quality. Our determin-istic and fine grain distribution of a run on a manycore processor is compared with OS primitives and API based parallelization (e.g. pthread, OpenMP or MPI) and to compiler automatic paralleliza-tion of loops. The former implies (i) a high OS overhead meaning that only coarse grain parallelization is cost-effective and (ii) a non deterministic behaviour meaning that appropriate synchronization to eliminate wrong results is a challenge. The latter is unable to fully parallelize general purpose programs due to structures like functions, complex loops and branches.
Type de document :
Communication dans un congrès
PMAM: Programming Models and Applications for Multicores and Manycores, Mar 2016, Barcelona, Spain. 7th International Workshop on Programming Models and Applications for Multicores and Manycores, 2016, 〈10.1145/2883404.2883410〉
Liste complète des métadonnées

Littérature citée [16 références]  Voir  Masquer  Télécharger

https://hal.archives-ouvertes.fr/hal-01252007
Contributeur : David Parello <>
Soumis le : jeudi 7 janvier 2016 - 10:12:31
Dernière modification le : samedi 25 novembre 2017 - 10:16:11
Document(s) archivé(s) le : vendredi 8 avril 2016 - 13:13:15

Fichier

pmam_2016.pdf
Fichiers produits par l'(les) auteur(s)

Licence


Distributed under a Creative Commons Paternité - Pas de modifications 4.0 International License

Identifiants

Collections

Citation

Bernard Goossens, David Parello, Katarzyna Porada, Djallal Rahmoune. Parallel Locality and Parallelization Quality. PMAM: Programming Models and Applications for Multicores and Manycores, Mar 2016, Barcelona, Spain. 7th International Workshop on Programming Models and Applications for Multicores and Manycores, 2016, 〈10.1145/2883404.2883410〉. 〈hal-01252007〉

Partager

Métriques

Consultations de la notice

171

Téléchargements de fichiers

145