Containerisation for High Performance Computing Systems: Survey and Prospects
arXiv:2212.08717 · doi:10.1109/TSE.2022.3229221
Abstract
Containers improve the efficiency in application deployment and thus have been widely utilised on Cloud and lately in High Performance Computing (HPC) environments. Containers encapsulate complex programs with their dependencies in isolated environments making applications more compatible and portable. Often HPC systems have higher security levels compared to Cloud systems, which restrict users' ability to customise environments. Therefore, containers on HPC need to include a heavy package of libraries making their size relatively large. These libraries usually are specifically optimised for the hardware, which compromises portability of containers. Per contra, a Cloud container has smaller volume and is more portable. Furthermore, containers would benefit from orchestrators that facilitate deployment and management of containers at a large scale. Cloud systems in practice usually incorporate sophisticated container orchestration mechanisms as opposed to HPC systems. Nevertheless, some solutions to enable container orchestration on HPC systems have been proposed in state of the art. This paper gives a survey and taxonomy of efforts in both containerisation and its orchestration strategies on HPC systems. It highlights differences thereof between Cloud and HPC. Lastly, challenges are discussed and the potentials for research and engineering are envisioned.
IEEE Transactions on Software Engineering
References in corpus (2)
Cited by in corpus (4)
- Reproducibility, Replicability, and Repeatability: A survey of reproducible research with a focus on high performance computing
- Qubernetes: Towards a Unified Cloud-Native Execution Platform for Hybrid Classic-Quantum Computing
- Smart HPA: A Resource-Efficient Horizontal Pod Auto-scaler for Microservice Architectures
- Toolchain for Faster Iterations in Quantum Software Development