Abstract

The High Performance Computing (HPC) domain aims to optimize code in order to use the latest multicore and parallel technologies including specific processor instructions. In this computing framework, portability and reproducibility are key concepts. A way to handle these requirements is to use Linux containers. These “light virtual machines” allow to encapsulate applications within its environment in Linux processes. Containers have been recently rediscovered due to their abilities to provide both multi-infrastructure environnement for developers and system administrators and reproducibility due to image building file. Two container solutions are emerging: Docker for microservices and Singularity for computing applications. We present here the status of the ComputeOps project which has the goal to study the benefit of containers for HPC applications.

Highlights

  • Containers provide flexible strategies for packaging, deploying and running isolated application processes within multi-user systems, enabling scientific reproducibility

  • This Comprehensive Software Archive Network (CSAN) will be based on Singularity [2] and the Guix [16] package manager which will allow a full reproducibility of the container including all the software installed inside it thanks to the Guix package manager

  • The Continuous Integration (CI) workflow involving containers is usually made of several steps: 1. code commit: the code hosted on the GitLab-CI starts a new pipeline on each commit or upon some specific conditions; 2. pipeline runner: GitLab-CI provides a container runner based on Docker, in which one can build a Docker or Singularity image following the recipe provided; 3. automatic deployment of built images and/or automatic pushing to a registry; 4. image scanning: check the Common Vulnerabilities Exposures (CVEs) (Common Vulnerabilities Exposure) in the final image

Read more

Summary

Introduction

Containers provide flexible strategies for packaging, deploying and running isolated application processes within multi-user systems, enabling scientific reproducibility. We will present here a status report of the ComputeOps project, highlighting on the progress made since the last proceeding published for CHEP 2018 [1]

Container solution evaluation
Sharing container images
Filesystem
Continous integration with containers
Orchestrator versus scheduler
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call