pioman: a pthread-based Multithreaded Communication Engine

Alexandre Denis 1, 2, 3, *
* Corresponding author
1 RUNTIME - Efficient runtime systems for parallel architectures
Inria Bordeaux - Sud-Ouest, UB - Université de Bordeaux, CNRS - Centre National de la Recherche Scientifique : UMR5800
2 TADAAM - Topology-Aware System-Scale Data Management for High-Performance Computing
LaBRI - Laboratoire Bordelais de Recherche en Informatique, Inria Bordeaux - Sud-Ouest
Abstract : Recent cluster architectures include dozens of cores per node, with all cores sharing the network resources. To program such architectures, hybrid models mixing MPI+threads, and in particular MPI+OpenMP are gaining popularity. This imposes new requirements on communication libraries, such as the need for MPI_THREAD_MULTIPLE level of multi-threading support. Moreover, the high number of cores brings new op-portunities to parallelize communication libraries, so as to have proper background progression of communication and commu-nication/computation overlap. In this paper, we present pioman, a generic framework to be used by MPI implementations, that brings seamless asynchronous progression of communication by opportunistically using available cores. It uses system threads and thus is composable with any runtime system used for multithreading. Through various benchmarks, we demonstrate that our pioman-based MPI implementation exhibits very good properties regarding overlap, progression, and multithreading, and outperforms state-of-art MPI implementations.
Keywords : MPI pioman NewMadeleine
Liste complète des métadonnées

Cited literature [23 references]  Display  Hide  Download

https://hal.inria.fr/hal-01087775
Contributor : Alexandre Denis <>
Submitted on : Wednesday, November 26, 2014 - 4:00:40 PM
Last modification on : Thursday, January 11, 2018 - 6:27:21 AM
Document(s) archivé(s) le : Friday, February 27, 2015 - 12:35:45 PM

File

final.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01087775, version 1

Citation

Alexandre Denis. pioman: a pthread-based Multithreaded Communication Engine. Euromicro International Conference on Parallel, Distributed and Network-based Processing, Mar 2015, Turku, Finland. ⟨hal-01087775⟩

Share

Metrics

Record views

475

Files downloads

295