Data Transfer Schemes in the High-Level Communication Library LAIK

With the trend towards more heterogeneity, programming applications on modern HPC systems is getting more complex. Programming models with uniform data transfer concepts across physical memory spaces, be it attached to host CPUs, accelerators, or across nodes, can help significantly. Task-based mode...

Full description

Saved in:
Bibliographic Details
Published in:2025 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW) pp. 187 - 196
Main Authors: Weidendorfer, Josef, Neef, Lukas, Hubinger, Robert, Raoofy, Amir
Format: Conference Proceeding
Language:English
Published: IEEE 03.06.2025
Subjects:
ISSN:2995-066X
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:With the trend towards more heterogeneity, programming applications on modern HPC systems is getting more complex. Programming models with uniform data transfer concepts across physical memory spaces, be it attached to host CPUs, accelerators, or across nodes, can help significantly. Task-based models offer this flexibility, but need a complete rewrite of typical hybrid MPI and OpenMP code. LAIK is a high-level communication library that represents communications as explicit cache coherence enforcement on top of logical global address spaces, ensuring affinity of data and computation for high performance. LAIK enables code porting in small incremental steps since it keeps the same procedural SPMD style as MPI code and, hence, is usable together with MPI, cooperatively. In this paper, we introduce various data transfer schemes implemented as communication backends in LAIK. We mainly focus on communication backends that leverage shared memory transfer schemes via System-V IPC to take advantage of hardware cache coherence. We evaluate the performance of these schemes against the MPI backend in the implementation of LAIK. Finally, we show that a 0-copy scheme, implemented as a backend in LAIK, can provide similar performance to OpenMP while using the same LAIK programming model that works for node- and cluster-level communication.
ISSN:2995-066X
DOI:10.1109/IPDPSW66978.2025.00035