TY - GEN
T1 - HPC-in-Containers
T2 - 2024 International Conference on Information Technology Systems and Innovation, ICITSI 2024
AU - Arisal, Andria
AU - Suhartanto, Heru
N1 - Publisher Copyright:
© 2024 IEEE.
PY - 2024
Y1 - 2024
N2 - This paper presents HPC-in-Containers, a novel containerized parallel computing environment using Docker. It is designed to facilitate learning parallel programming concepts, where users do not have to deploy a multicomputer infrastructure. Instead, they can use their desktop and laptop to easily have a multicomputer environment by utilizing containerization on the multi-core CPU. The environment offers a comprehensive platform for exploring various parallel programming paradigms, including distributed memory parallelism, shared memory parallelism, and hybrid approaches. We include source code samples for each paradigm to demonstrate its capabilities: parallel multicomputer implementations using MPI, parallel thread implementations for single computers using OpenMP, and hybrid parallelization techniques combining both MPI and OpenMP. Furthermore, to enhance user interaction and ease of use, the Docker image incorporates a Jupyter Notebook interface with a C interpreter, allowing users to write, execute, and visualize parallel code through a web browser. This feature makes HPC-in-Containers particularly suitable for educational settings, enabling students to experiment with parallel programming concepts in a controlled, reproducible environment. Our work contributes to the field of parallel computing education by providing a flexible, scalable, and easily deployable platform that bridges the gap between theoretical concepts and practical implementation. It offers a valuable resource for educators, students, and researchers seeking to explore and master the intricacies of parallel programming in a containerized setting.
AB - This paper presents HPC-in-Containers, a novel containerized parallel computing environment using Docker. It is designed to facilitate learning parallel programming concepts, where users do not have to deploy a multicomputer infrastructure. Instead, they can use their desktop and laptop to easily have a multicomputer environment by utilizing containerization on the multi-core CPU. The environment offers a comprehensive platform for exploring various parallel programming paradigms, including distributed memory parallelism, shared memory parallelism, and hybrid approaches. We include source code samples for each paradigm to demonstrate its capabilities: parallel multicomputer implementations using MPI, parallel thread implementations for single computers using OpenMP, and hybrid parallelization techniques combining both MPI and OpenMP. Furthermore, to enhance user interaction and ease of use, the Docker image incorporates a Jupyter Notebook interface with a C interpreter, allowing users to write, execute, and visualize parallel code through a web browser. This feature makes HPC-in-Containers particularly suitable for educational settings, enabling students to experiment with parallel programming concepts in a controlled, reproducible environment. Our work contributes to the field of parallel computing education by providing a flexible, scalable, and easily deployable platform that bridges the gap between theoretical concepts and practical implementation. It offers a valuable resource for educators, students, and researchers seeking to explore and master the intricacies of parallel programming in a containerized setting.
KW - container
KW - docker
KW - jupyter
KW - mpi
KW - openmp
KW - parallel programming
UR - http://www.scopus.com/inward/record.url?scp=105002479655&partnerID=8YFLogxK
U2 - 10.1109/ICITSI65188.2024.10929375
DO - 10.1109/ICITSI65188.2024.10929375
M3 - Conference contribution
AN - SCOPUS:105002479655
T3 - 2024 International Conference on Information Technology Systems and Innovation, ICITSI 2024 - Proceedings
SP - 101
EP - 105
BT - 2024 International Conference on Information Technology Systems and Innovation, ICITSI 2024 - Proceedings
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 12 December 2024
ER -