新十年伊始,正是回顾 莱布尼茨超级计算中心 (LRZ) 使用 Spack 情况的好时机。我们希望审视当前的发展情况,并通过“水晶球”展望一下(不久的)未来。

LRZ 使用 Spack 的故事要追溯到 2018 年初。随着当时即将到来的 SuperMUC-NG(目前德国最快的超级计算机)的采购,一个由 HPC 软件应用支持人员组成的小团队着手优化 LRZ 集群上的软件安装。在之前的系统上,每个软件包都是单独安装和管理的。多年来,这个软件栈变得极其庞大,以至于继续沿用这种做法已不再可行。Spack 同时带来了承诺:一个用于安装和维护软件的一致且灵活的框架。Spack 确实做到了,因此将 LRZ 软件栈迁移到 Spack 的工作开始了。

2018 年下半年,该软件栈的测试版本在 Linux 集群上投入运行。这是一个异构集群系统,服务于 慕尼黑各所大学 以及整个巴伐利亚地区的研究人员。与此同时,SuperMUC-NG 的部署阶段持续进行,当早期用户开始使用时,主要的软件栈已基于 Spack,为用户提供了超过 220 个软件模块。自那时起,2019 年底的又一次内部版本更新为用户提供了更新的库和应用程序。

Members of the LRZ Spack team in front of SuperMUC-NG and pointing
at a Spack sticker placed on the rack front.
LRZ Spack 团队在 SuperMUC-NG 前合影。没错,我们在机器上贴了一个贴纸。

如今,随着 前代系统 达到使用寿命并在年末关闭,LRZ 目前运行的所有高性能集群系统上的软件安装均已由 Spack 管理。

在不断将更多软件包集成到 Spack 中的同时(目前尚需处理的例外是一些核心组件,如某些编译器和 MPI 库),团队的新年目标是升级到最新的 Spack 上游版本。这将引入期待已久的新功能(如链式安装),其明确目标是让用户能够构建在 LRZ 提供的公共软件栈之上,自行配置和安装各自的软件。此外,随着环境、软件栈以及针对微架构优化的进一步完善,我们将能够替换掉大量的内部配置和代码定制。

团队期待继续与活跃的 Spack 社区并肩工作,为上游开发和用户支持做出贡献,同时通过 Spack 让超级计算机软件的安装和维护变得充满乐趣!

请务必在 Twitter 上关注 @lrz_de,获取关于慕尼黑、巴伐利亚、德国乃至更广泛地区学生和研究人员的超级计算最新动态。

– Johannes Albert-von der Gönna 及 LRZ Spack 团队,莱布尼茨超级计算中心