面向HPC动态资源管理的测试分类学与持续集成生态系统
《Future Generation Computer Systems》:A test taxonomy and continuous integration ecosystem for dynamic resource management in HPC
【字体:
大
中
小
】
时间:2026年09月05日
来源:Future Generation Computer Systems 6.2
编辑推荐:
摘要动态资源管理技术,尤其是MPI可伸缩性(malleability),在高性能计算(HPC)领域已经非常成熟。尽管尚未被广泛采用,但由于其在资源利用优化、缩短队列等待时间以及提高能源效率方面的显著优势,人们对这些方法越来越感兴趣。然而,它们的验证仍然充满挑战,因为其表现取决
摘要
动态资源管理技术,尤其是MPI可伸缩性(malleability),在高性能计算(HPC)领域已经非常成熟。尽管尚未被广泛采用,但由于其在资源利用优化、缩短队列等待时间以及提高能源效率方面的显著优势,人们对这些方法越来越感兴趣。然而,它们的验证仍然充满挑战,因为其表现取决于应用程序、MPI运行时与资源管理器之间复杂的交互作用,这使得标准化变得困难。本文提出了一种针对MPI可伸缩库的测试方法论,该方法基于测试分类体系,并结合了持续集成生态系统,旨在能够在容器化的类HPC环境中实现可重复的验证。
该分类体系将测试分为组件集成测试和系统测试。系统测试进一步分为功能测试和非功能测试,以评估MPI可伸缩库的鲁棒性、可扩展性和延迟特性。我们特别以动态资源管理(DMR)库作为典型案例,实例化了该方法论。
所提出的CI工作流在生产级超级计算机环境和基于Docker的虚拟集群中对DMR进行验证,实现了对多个Slurm版本的自动化、版本感知的测试。结果表明,所提出的CI生态系统提高了DMR验证的可重复性,支持在部署前检测与新版Slurm的兼容性问题,并为随着软件依赖关系演进而维护DMR库提供了结构化框架。
引言
随着高性能计算(HPC)系统面临更多异构架构、波动的工作负载以及更严格的能源和吞吐量约束,动态资源管理变得越来越重要。基于消息传递接口(MPI)的可伸缩性解决方案允许应用程序在运行时调整其进程布局和资源占用,为应对这些约束提供了强大的机制,但同时也引入了科学应用程序、并行运行时与资源管理系统(RMS)之间复杂而难以验证和维护的交互关系。
尽管MPI可伸缩性工具及其相关库在鲁棒性方面取得了显著进展,但验证仍然往往依赖于临时性的工作流程:开发人员需要重建定制的软件栈、重新配置环境并运行手动实验,以检查调整大小逻辑、数据管理和错误处理是否按预期工作。随着这些解决方案不断演进并与多种运行时和调度器集成,缺乏结构化的测试和自动化已成为可持续发展的瓶颈。
在此背景下,动态资源管理(DMR)框架已成为MPI可伸缩性方面一项成熟的研究软件资产[1]。多年来,DMR已被集成到各种面向生产环境的科学应用中,涵盖计算力学、环境建模、分子动力学和基因组测序等领域(例如GROMACS、Alya、OpenFOAM、HPG-Aligner、MPDATA-GPU和SERGHEI-SWE)[2]、[3]、[4]、[5]、[6]、[7]、[8]、[9]、[10]。这种广泛的采用,加上在进程管理机制(如Proteo、DPP和ULFM)[11]、[12]、[13]、[14]、[15]、[16]以及资源管理工具(如Slurm扩展、OAR和混合CPU-QPU工作流)[17]、[18]、[19]、[20]、[21]、[22]方面的持续工作,既凸显了DMR的灵活性,也突显了在其众多集成点上维护正确性的复杂性。
本文提出了一种测试分类体系和持续集成(CI)生态系统来解决这些挑战,以支持在真实的HPC环境中进行系统化、可重复且版本感知的动态行为验证。本工作的贡献包括:(1) 首次为MPI可伸缩性库设计和应用了CI生态系统;(2) 提出了一种用于验证MPI可伸缩性框架DMR的测试分类体系。我们在生产级超级计算环境和基于Docker的虚拟集群中部署了所提出的测试套件,证明测试在两种环境中均通过,同时在使用虚拟集群时无需在共享环境中申请资源。通过将虚拟集群部署到多个Slurm版本中,我们还展示了该方法能够在部署到生产环境之前检测到与新版RMS的兼容性问题。
本文其余部分组织如下。第2节介绍了可伸缩性和DMR的背景知识,并回顾了HPC中动态资源管理和CI方法论的相关工作。第3节介绍了针对动态资源管理提出的测试分类体系和CI生态系统。第4节展示了该方法论在DMR中的实例化应用。第5节在不同场景下评估了这一用例。第6节讨论了该方法论如何扩展到其他可伸缩性解决方案,第7节为结论。
各章节摘要
背景与技术现状
动态资源管理,尤其是MPI可伸缩性,为HPC应用程序适应变化的系统条件提供了所需的灵活性,但同时也引入了应用程序、并行运行时与资源管理器之间的复杂依赖关系。本节首先概述了MPI可伸缩性的主要概念,然后回顾了HPC中动态资源管理和测试实践的相关工作,最后介绍了DMR框架作为具体的可伸缩性解决方案。
方法论
本节提出了针对MPI可伸缩库的测试分类体系,沿预定义的维度组织可伸缩性相关测试的空间,并澄清了功能评估与非功能评估之间的区别。同时,还描述了一个面向HPC的MPI可伸缩性持续集成生态系统。
测试方法论的应用
本节展示了如何基于第3节中形式化的测试分类体系,将测试方法论和CI生态系统实例化,以验证DMR框架。
实验结果
本节评估了为DMR框架实现的测试方法论和CI生态系统。首先,我们验证了DMR及其测试套件在生产级超级计算机上能够正确运行,证明该方法与真实的HPC环境兼容。然后,我们评估了相同配置在多个Slurm版本下的表现,突出了CI流水线如何暴露版本特定的不兼容问题,并支持系统化的依赖管理。
讨论
本文提出了一种CI测试分类体系和方法论,并完全在DMR MPI可伸缩性解决方案上进行了部署。就局限性而言,本工作未能推广到其他MPI可伸缩性解决方案。
理想的测试分类体系和CI生态系统应该是框架无关的。在此背景下,重点关注那些天然支持API级测试和集成测试的现有可伸缩性框架。由于基于SCR扩展的工作[36]——
结论
本文提出的工作表明,可伸缩性库可以通过系统化的、测试驱动的方法来获得支持,而非依赖临时的手工策划实验。通过为MPI可伸缩库引入测试分类体系并结合面向HPC的CI生态系统,该方法能够在组件级和系统级实现结构化且可重复的功能与非功能行为验证,同时使用真实的MPI运行时和资源管理器——
CRediT作者贡献声明
Petter Sand?s: 撰写——原稿、软件、调查。í?igo Aréjula-Aísa: 撰写——原稿、验证、软件。Sergio Iserte: 撰写——审稿与编辑、撰写——原稿、方法论、概念构思。Antonio J. Pe?a: 撰写——审稿与编辑、监督、资源提供、资金获取。
资金来源
本项目由西班牙数字化转型与公共职能部和欧盟——下一代欧盟共同资助,属于《复苏、转型与韧性计划》框架。文中表达的观点和意见仅代表作者,不一定反映欧盟的立场。欧盟和欧洲委员会均不承担任何责任。Antonio J. Pe?a部分得到了Ramón y的资助。
利益冲突声明
作者声明,不存在可能影响本文工作的已知竞争性经济利益关系或个人关系。
致谢
语言润色使用了AI语言模型,随后由作者进行了彻底的审阅和编辑。作者对最终稿件内容承担全部责任。
作者感谢编辑和匿名审稿人,他们的建议显著提高了本文的质量。
Petter Sand?s|í?igo Aréjula-Aísa|Sergio Iserte|Antonio J. Pe?a
巴塞罗那超级计算中心(BSC),西班牙巴塞罗那
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号