Maintaining a Modern Scientific Software Stack Made Easy with EasyBuild

Maintaining a Modern Scientific Software Stack Made Easy with EasyBuild

HPC Workflows

Information

Installing scientific software for supercomputers is known to be a tedious and time-consuming task. Increasing HPC user community diversity, as well as hardware complexity, continues to deepen the application software stack. Delivering optimised software installations and providing access to these installations in a reliable, user-friendly way is a highly non-trivial task that affects the application developer, the HPC user support teams, and the users themselves. This tutorial addresses this issue, providing the attendees with the knowledge to install and manage software in a clean and reproducible way. For this, the tutorial introduces EasyBuild, a software build and installation framework implemented in Python. It supports implementing (complex) installation procedures concisely, and is able to fully autonomously perform optimised software installations. It is open source and has a thriving community, and supports more than 2,200 (scientific) software packages. It is well integrated with different implementations of environment modules (Lmod, Tcl, C) to generate module files automatically and present them in a consistent way.