Show simple item record

dc.contributor.authorSala Penadés, Kevin
dc.contributor.authorBellón, Jorge
dc.contributor.authorFarré, Pau
dc.contributor.authorTeruel, Xavier
dc.contributor.authorPérez, Josep M.
dc.contributor.authorPeña, Antonio J.
dc.contributor.authorHolmes, Daniel
dc.contributor.authorBeltran Querol, Vicenç
dc.contributor.authorLabarta Mancho, Jesús José
dc.contributor.otherUniversitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
dc.contributor.otherBarcelona Supercomputing Center
dc.date.accessioned2018-12-04T10:19:51Z
dc.date.available2018-12-04T10:19:51Z
dc.date.issued2018
dc.identifier.citationSala, K., Bellón, J., Farré, P., Teruel, X., Pérez, J., Peña, A., Holmes, D., Beltran, V., Labarta, J. Improving the interoperability between MPI and task-based programming models. A: European MPI Users' Group Meeting. "Proceedings of the 25th European MPI Users' Group Meeting: Barcelona, Spain, September 23-26, 2018". New York: Association for Computing Machinery (ACM), 2018, p. 1-11.
dc.identifier.isbn978-1-4503-6492-8
dc.identifier.urihttp://hdl.handle.net/2117/125347
dc.description.abstractIn this paper we propose an API to pause and resume task execution depending on external events. We leverage this generic API to improve the interoperability between MPI synchronous communication primitives and tasks. When an MPI operation blocks, the task running is paused so that the runtime system can schedule a new task on the core that became idle. Once the MPI operation is completed, the paused task is put again on the runtime system's ready queue. We expose our proposal through a new MPI threading level which we implement through two approaches. The first approach is an MPI wrapper library that works with any MPI implementation by intercepting MPI synchronous calls, implementing them on top of their asynchronous counterparts. In this case, the task-based runtime system is also extended to periodically check for pending MPI operations and resume the corresponding tasks once MPI operations complete. The second approach consists in directly modifying the MPICH runtime system, a well-known implementation of MPI, to directly call the pause/resume API when a synchronous MPI operation blocks and completes, respectively. Our experiments reveal that this proposal not only simplifies the development of hybrid MPI+OpenMP applications that naturally overlap computation and communication phases; it also improves application performance and scalability by removing artificial dependencies across communication tasks.
dc.description.sponsorshipThis work has been developed with the support of the European Union Horizon 2020 Programme through both the INTERTWinE project (agreement No. 671602) and the Marie Sk lodowska-Curie grant (agreement No. 749516); the Spanish Government through the Severo Ochoa Program (SEV-2015-0493); the Spanish Ministry of Science and Innovation (TIN2015-65316-P) and the Generalitat de Catalunya (2017-SGR-1414).
dc.format.extent11 p.
dc.language.isoeng
dc.publisherAssociation for Computing Machinery (ACM)
dc.subjectÀrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
dc.subject.lcshApplication program interfaces (Computer software)
dc.subject.otherMPI
dc.subject.otherOpenMP
dc.subject.otherOmpSs-2
dc.subject.otherInteroperability
dc.subject.otherTas
dc.subject.otherAsynchronous
dc.titleImproving the interoperability between MPI and task-based programming models
dc.typeConference report
dc.subject.lemacInterfícies de programació d'aplicacions (Programari)
dc.contributor.groupUniversitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
dc.identifier.doi10.1145/3236367.3236382
dc.description.peerreviewedPeer Reviewed
dc.relation.publisherversionhttps://dl.acm.org/citation.cfm?id=3236382
dc.rights.accessOpen Access
local.identifier.drac23535291
dc.description.versionPostprint (author's final draft)
dc.relation.projectidinfo:eu-repo/grantAgreement/MINECO/1PE/TIN2015-65316-P
dc.relation.projectidinfo:eu-repo/grantAgreement/AGAUR/2017 SGR 1414
dc.relation.projectidinfo:eu-repo/grantAgreement/EC/H2020/679038/EU/Multi Ion Reflection Apparatus for Collinear Laser Spectroscopy of radionuclides/MIRACLS
dc.relation.projectidinfo:eu-repo/grantAgreement/EC/H2020/749516/EU/Advanced Ecosystem for Broad Heterogeneous Memory Usage/ECO-H-MEM
dc.relation.projectidinfo:eu-repo/grantAgreement/MINECO/PE2013-2016/TIN2015-65316-P
dc.relation.projectidinfo:eu-repo/grantAgreement/MINECO/PE2013-2016/SEV-2015-0493
local.citation.authorSala, K.; Bellón, J.; Farré, P.; Teruel, X.; Pérez, J.; Peña, A.; Holmes, D.; Beltran, V.; Labarta, J.
local.citation.contributorEuropean MPI Users' Group Meeting
local.citation.pubplaceNew York
local.citation.publicationNameProceedings of the 25th European MPI Users' Group Meeting: Barcelona, Spain, September 23-26, 2018
local.citation.startingPage1
local.citation.endingPage11


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

All rights reserved. This work is protected by the corresponding intellectual and industrial property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public communication or transformation of this work are prohibited without permission of the copyright holder