Ensuring Correctness at the Application Level: a Software Framework Approach
Eloisa Bentivegna, Gabrielle Allen, Oleg Korobkin, Erik Schnetter

TL;DR
This paper discusses a software framework that enhances correctness verification across multiple abstraction levels in complex scientific applications, addressing gaps in application-level debugging tools.
Contribution
It introduces the Cactus framework's programming model and correctness strategies for ensuring application correctness in high-performance computing environments.
Findings
Cactus provides multi-level correctness tools.
The framework addresses HPC challenges effectively.
Application-level debugging is enhanced.
Abstract
As scientific applications extend to the simulation of more and more complex systems, they involve an increasing number of abstraction levels, at each of which errors can emerge and across which they can propagate; tools for correctness evaluation and enforcement at every level (from the code level to the application level) are therefore necessary. Whilst code-level debugging tools are already a well established standard, application-level tools are lagging behind, possibly due to their stronger dependence on the application's details. In this paper, we describe the programming model introduced by the Cactus framework, review the High Performance Computing (HPC) challenges that Cactus is designed to address, and illustrate the correctness strategies that are currently available in Cactus at the code, component, and application level.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsPulsars and Gravitational Waves Research · Radiology practices and education
