arXiv · 2211.05118
Mapping Out the HPC Dependency Chaos
Abstract
High Performance Computing~(HPC) software stacks have become complex, with the dependencies of some applications numbering in the hundreds. Packaging, distributing, and administering software stacks of that scale is a complex undertaking anywhere. HPC systems deal with esoteric compilers, hardware, and a panoply of uncommon combinations. In this paper, we explore the mechanisms available for packaging software to find its own dependencies in the context of a taxonomy of software distribution, and discuss their benefits and pitfalls. We discuss workarounds for some common problems caused by using these composed stacks and introduce Shrinkwrap: A solution to producing binaries that directly load their dependencies from precise locations and in a precise order. Beyond simplifying the use of the binaries, this approach also speeds up loading as much as 7x for a large dynamically-linked MPI application in our evaluation.
Explore related subjects
Keep this discovery
Farid Zakaria, Thomas R. W. Scogland, Todd Gamblin, Carlos Maltzahn. 2022-10-22. Mapping Out the HPC Dependency Chaos. https://arxiv.org/abs/2211.05118
Cite the original work for its findings. Save a collection to share your selection of sources.