GitLab HPC Driver


GitLab HPC Driver

Pape, D.

Um gute Performance und Skalierbarkeit von hochparalleler wissenschaftlicher Software sicherzustellen, ist es wichtig, diese in einer möglichst realitätsnahen Umgebung zu testen. Wünschenswert ist dabei ein möglichst einfacher Zugriff auf die HPC-Ressourcen über ein bereits etabliertes System wie GitLab CI. Dafür wurde ein Driver für den GitLab-Runner entwickelt, der es erlaubt Continuous-Integration-Jobs auf Hochleistungsrechnern auszuführen. Der Driver wird vom GitLab-Runner-Service aufgerufen und kann vom Nutzer auf die gleiche Art und Weise verwendet werden, wie andere im GitLab-Ökosystem bekannte CI-Systeme. Es werden HPC-Ressourcen unterstützt, die vom Batchsystem Slurm verwaltet werden.

To ensure high performance and scalability in scientific software, a realistic testing environment plays an important role. Preferably, easy access to HPC resources is enabled via an established tool like GitLab CI. For that, a driver for GitLab runner has been developed that allows the execution of CI jobs on a supercomputer. The driver is called by GitLab runner service and can be used in the same way as other tools in the GitLab ecosystem. It supports HPC resources managed by the Slurm batch system.

Keywords: continuous integration; high performance computing; GitLab; Slurm; batch system; scientific software; research software development

  • Software in external data repository
    Publication year 2020
    Programming language: C++
    System requirements: Linux
    License: GPL v3 (Link to license text)
    Hosted on https://gitlab.hzdr.de/fwcc/gitlab-hpc-driver:

Permalink: https://www.hzdr.de/publications/Publ-30790
Publ.-Id: 30790