一句话:提出将能耗与代码覆盖率并列为目标的多目标测试优先级排序方法,用于降低HPC测试能耗。
高性能计算应用需要在超级计算机和分布式集群上执行数千个测试,其测试成本因计算需求大、执行时间长而比传统软件测试高出数个数量级。现有测试优先级排序技术多以执行时间作为能耗代理,但在HPC中,由于并行效率、通信开销和加速器使用等因素,这一代理关系不再成立。本文提出一种新的多目标优化方法,将能耗消耗与代码覆盖率共同视为HPC测试优先级排序的一等目标。作者在广泛使用的分子动力学模拟器LAMMPS上进行评估,结果表明,相比穷尽测试,该方法平均节省97.5%的能耗,同时保持对修改代码约95%的平均语句覆盖率,为可持续HPC测试提供了有前景的方向。
High-Performance Computing (HPC) applications require extensive testing with thousands of tests executed on supercomputers and distributed clusters. While traditional software testing is relatively cheap, HPC testing costs are orders of magnitude higher due to greater computational demands and longer execution times. Existing test prioritization techniques target traditional software systems using execution time as a proxy for energy consumption, but remain unexplored for HPC applications where this correlation breaks down due to parallel efficiency, communication overhead, and accelerator usage. We propose a novel multi-objective optimization approach that treats energy consumption as a first-class objective alongside code coverage for HPC test prioritization. Using LAMMPS, a widely-used molecular dynamics simulator, we demonstrate 97.5% average energy savings compared to exhaustive testing while maintaining 95% average statement coverage of modified code, suggesting a promising direction for sustainable HPC testing.