A multithreaded communication engine for multicore architectures

François Trahay 1, 2 Elisabeth Brunet 1, 2 Alexandre Denis 1, 2 Raymond Namyst 1, 2
2 RUNTIME - Efficient runtime systems for parallel architectures
Inria Bordeaux - Sud-Ouest, CNRS - Centre National de la Recherche Scientifique : UMR5800, UB - Université de Bordeaux
Abstract : The current trend in clusters leads towards an increase of the number of cores per node. As a result, an increasing number of parallel applications is mixing message passing and multithreading as an attempt to better match the underlying architecture's structure. This naturally raises the problem of designing efficient, multithreaded implementations of MPI. In this paper, we present the design of a multithreaded communication engine able to exploit idle cores to speed up communications in two ways: it can move CPU-intensive operations out of the critical path (e.g. PIO transfers offload), and is able to let rendezvous transfers progress asynchronously. We have implemented these methods in the PM2 software suite, evaluated their behavior in typical cases, and we have observed good performance results in overlapping communication and computation.
Type de document :
Communication dans un congrès
Communication Architecture for Clusters, Apr 2008, Miami, United States. 2008, <10.1109/IPDPS.2008.4536139>

Contributeur : François Trahay <>
Soumis le : mercredi 30 janvier 2008 - 11:09:34
Dernière modification le : jeudi 10 septembre 2015 - 01:06:19
Document(s) archivé(s) le : vendredi 30 avril 2010 - 21:52:06


Fichiers produits par l'(les) auteur(s)




François Trahay, Elisabeth Brunet, Alexandre Denis, Raymond Namyst. A multithreaded communication engine for multicore architectures. Communication Architecture for Clusters, Apr 2008, Miami, United States. 2008, <10.1109/IPDPS.2008.4536139>. <inria-00224999>



Consultations de
la notice


Téléchargements du document