To achieve scalable and optimized compute performance paired with reliable operation on a compute cluster, the base HPC related software components must be well tuned and matched up. The Qlustar HPC Core Stack is comprised of a handful software packages that together with the kernel drivers provide the foundation of the HPC application stack. We take the stance that the borderline between the latter and the core stack is defined by the MPI software packages.
While all the dependencies of the MPI packages like communication, process management and workload manager libraries/tools are part of the core stack, the MPI packages like OpenMPI that are built on top of them, define the first layer of the application stack.
HPC Core Stack components
The following software packages are part of the Qlustar HPC Core Stack:
- The libraries and tools of the rdma-core software collection provide the userspace components for the high-speed Infiniband network subsystem often used in HPC clusters.
- The base libraries and drivers for GPU hardware.
- The Slurm workload manager responsible for distributing and managing user compute jobs on an HPC system.
- PMIx takes care of the process management for distributed applications (like MPI).
- UCX, the communication framework for data-centric and high-performance applications is used as the default communication library for OpenMPI and supports a large number of transport mechanisms like Infiniband and GPUDirect.
- Spack is used as package manager for HPC related application software.
Spack HPC Package Manager
Qlustar 13 introduces Spack as the package manager for HPC related software beyond the HPC core stack. Spack has a huge list of supported software packages and provides hardware optimized versions of them by design. Another big advantage of Spack: Multiple versions of the same software can easily co-exist on the same cluster.
The Qlustar version of Spack is provided as an OS package (deb/rpm) and uses the packages of the Qlustar HPC core stack as so-called External Packages thus assuring a flawless integration. The same versions of these packages are provided for all Qlustar edge-platforms hence guaranteeing that Spack HPC applications work the same on all of them.