Abstract
In this work, we present an efficient mechanism which allows unmodified OpenMP applications to leverage the computational resources of any node in a cluster through the OpenMP device interface. Remote CPUs and remote accelerators such as GPUs are all available to offload code portions to, completely transparently, as if they belonged to the host node that executes the application. This is possible by virtualizing remote resources to appear as local devices and introducing a device-agnostic communication mechanism that forwards data requests to/from the remote nodes. The communication layer is based on MPI, eliminating the need for custom request servers, while providing excellent portability and optimized performance for a variety of network fabrics. Moreover, our implementation allows concurrent offloading to any combination of local and remote devices.
This work was supported by the project “Dioni: Computing Infrastructure for Big-Data Processing and Analysis” (MIS No. 5047222) which is implemented under the Action “Reinforcement of the Research and Innovation Infrastructure”, funded by the Operational Programme “Competitiveness, Entrepreneurship and Innovation” (NSRF 2014–2020) and co-financed by Greece and the European Union (European Regional Development Fund). It was also supported by computational time granted from the National Infrastructures for Research and Technology S.A. (GRNET S.A.) in the National HPC facility–ARIS–under project ID pa221202-ROMPIC.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Jacob, A.C., et al.: Exploiting fine- and coarse-grained parallelism using a directive-based approach. In: Proceedings of the IWOMP 2015, 11th International Workshop on OpenMP, pp. 30–41. Aachen, Germany (2015)
Kleftakis, I., Dimakopoulos, V.V.: Experiences with task-based programming using cluster nodes as OpenMP devices. In: HPCS 2020/2021, 18th Int’l Conference on High Performance Computing and Simulation. Barcelona, Spain (2021). also arXiv:2205.10656
Lu, W., et al.: Towards efficient remote OpenMP offloading. In: Proceedings of the IWOMP 2022, 18th International Workshop on OpenMP, pp. 17–31. Chattanooga, TN, USA (2022)
Patel, A., Doerfert, J.: Remote OpenMP offloading. In: Proceedings of the PPoPP 2022, 27th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 441–442. Seoul, Republic of Korea (2022)
Romano, P.K., Horelik, N.E., Herman, B.R., Nelson, A.G., Forget, B., Smith, K.: OpenMC: a state-of-the-art Monte Carlo code for research and development. Ann. Nucl. Energy 82, 90–97 (2015)
Yviquel, H., Araújo, G.: The cloud as an OpenMP offloading device. In: Proceedings of the ICPP 2017, 46th Int’l Conference on Parallel Processing, pp. 352–361. Bristol, UK (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Kasmeridis, I.K., Mantelos, S., Piperis, A., Dimakopoulos, V.V. (2024). Transparent Remote OpenMP Offloading Based on MPI. In: Zeinalipour, D., et al. Euro-Par 2023: Parallel Processing Workshops. Euro-Par 2023. Lecture Notes in Computer Science, vol 14352. Springer, Cham. https://doi.org/10.1007/978-3-031-48803-0_24
Download citation
DOI: https://doi.org/10.1007/978-3-031-48803-0_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-48802-3
Online ISBN: 978-3-031-48803-0
eBook Packages: Computer ScienceComputer Science (R0)