A Lightweight C++ Interface to MPI

التفاصيل البيبلوغرافية
العنوان: A Lightweight C++ Interface to MPI
المؤلفون: Thomas Fahringer, Simone Pellegrini, Radu Prodan
المصدر: PDP
بيانات النشر: IEEE, 2012.
سنة النشر: 2012
مصطلحات موضوعية: Object-oriented programming, Generic programming, ComputerSystemsOrganization_COMPUTERSYSTEMIMPLEMENTATION, Computer science, Programming language, Interface (Java), Windows Runtime, Serialization, Message passing, Message Passing Interface, Parallel computing, computer.software_genre, Factor (programming language), computer, computer.programming_language
الوصف: The Message Passing Interface (MPI) provides bindings for the three programming languages commonly used in High Performance Computing (HPC): C, C++ and Fortran. Unfortunately, MPI supports only the lowest common denominator of the three languages, providing a level of abstraction far lower than typical C++ libraries. Lately, after the decision of the MPI committee to deprecate and remove the C++ bindings from the MPI standard, programmers are forced to use either the C API or rely on third-party libraries. In this paper we present a lightweight, header-only C++ interface to MPI which uses object oriented and generic programming concepts to improve its integration into the C++ programming language. We compare our wrapper with a related approach called Boost. MPI showing how MPP facilitates the interaction with C++ objects. Performance wise, MPP outperforms Boost. MPI by reducing the interface overhead by a factor of eight. Additionally, MPP's handling of user-defined data types allows transferring of STL containers (e.g. std::list) up to 20 times faster than Boost. MPI for small linked lists by relying on software serialization.
DOI: 10.1109/pdp.2012.42
URL الوصول: https://explore.openaire.eu/search/publication?articleId=doi_________::922956ea2f1eb2e5fa53217bc731d080
https://doi.org/10.1109/pdp.2012.42
رقم الانضمام: edsair.doi...........922956ea2f1eb2e5fa53217bc731d080
قاعدة البيانات: OpenAIRE