kirancodes.me
To Proof Maintenance & Beyond!

BeeSwarm: Enabling Parallel Scaling Performance Measurement in Continuous Integration for HPC Applications

Jake Tronge, Jieyang Chen, Patricia Grubel, Tim Randles, Rusty Davis, Quincy Wofford, Steven Anaya, Qiang Guan

Abstract

Testing is one of the most important steps in software development–it ensures the quality of software. Continuous Integration (CI) is a widely used testing standard that can report software quality to the developer in a timely manner during development progress. Performance, especially scalability, is another key factor for High Performance Computing (HPC) applications. There are many existing profiling and performance tools for HPC applications, but none of these are integrated into CI tools. In this work, we propose BeeSwarm, an HPC container based parallel scaling performance system that can be easily applied to the current CI test environments. BeeSwarm is mainly designed for HPC application developers who need to monitor how their applications can scale on different compute resources. We demonstrate BeeSwarm using a multi-physics HPC application with Travis CI, GitLab CI and GitHub Actions while using ChameleonCloud and Google Compute Engine as the compute backends. Our results show that BeeSwarm can be used for scalability and performance testing of HPC applications.

BibTeX
@inproceedings{Tronge-al:ASE21,
  author    = {Jake Tronge and
               Jieyang Chen and
               Patricia Grubel and
               Tim Randles and
               Rusty Davis and
               Quincy Wofford and
               Steven Anaya and
               Qiang Guan},
  title     = {{BeeSwarm:} Enabling Parallel Scaling Performance Measurement in Continuous Integration for {HPC} Applications},
  booktitle = {ASE},
  pages     = {1136--1140},
  publisher = {{IEEE}},
  year      = {2021},
}

Related papers