The Message-Passing Interface (MPI) and C++ form the backbone of high-performance computing and algorithmic research in the field of distributed-memory computing, but MPI only provides C and Fortran bindings. This provides good language interoperability, but higher-level programming languages make development quicker and less error-prone. We propose novel C++ language bindings designed to cover the whole range of abstraction levels from low-level MPI calls to convenient STL-style bindings, where most parameters are inferred from a small subset of the full parameter set. This allows for both rapid prototyping and fine-tuning of distributed code with predictable runtime behavior and memory management. Using template-metaprogramming, only code paths required for computing missing parameters are generated at compile time, which results in (near) zero-overhead bindings.
SEEK ID: https://publications.h-its.org/publications/1903
Research Groups: Computational Molecular Evolution
Publication type: Proceedings
Journal: Proceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures
Book Title: Proceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures
Publisher: ACM
Citation: Proceedings of the 36th ACM Symposium on Parallelism in Algorithms and Architectures,pp.289-291,ACM
Date Published: 17th Jun 2024
Registered Mode: by DOI
Views: 4
Created: 9th Jan 2025 at 10:19
Last updated: 9th Jan 2025 at 10:20
This item has not yet been tagged.
None