JuliaCon 2025

Architecture-Agnostic Performance Regression Unit Tests
2025-07-23 , Main Room 4

PerfTest.jl is a Julia package conceived from the idea of bridging the gap between unit testing and architecture-agnostic performance testing. It brings a set of features that allow the user to set up performance regression unit tests from functional unit tests with minimal effort. An emphasis is made on letting the user create flexible test suites with classical performance models that can be applied across different machines.


Unit testing is a fundamental practice in software development, ensuring the correctness of individual code components. While traditional unit tests primarily focus on functional correctness, performance testing is often deferred to higher levels of application testing, making the identification of performance regressions more challenging. Such regressions can significantly impact computational efficiency and are particularly difficult to diagnose due to variations in hardware performance and fluctuations even within the same machine over time. This highlights the need for performance testing at the unit level to enable early detection and precise isolation of performance degradation. To address this gap, this work proposes the design and implementation of an automated performance regression unit testing framework, with a proof-of-concept developed specifically for Julia—a language increasingly favored in high-performance computing for its balance of usability and computational power. Our framework prioritizes ease of adoption and flexibility, accommodating diverse use cases while bridging the divide between functional and performance testing. By integrating modern software development practices into performance regression testing, this research aims to enhance the robustness and efficiency of testing methodologies of high-performance computing applications.

Computational Scientist | Responsible for Julia computing, Swiss National Supercomputing Centre (CSCS), ETH Zurich

This speaker also appears in:

Daniel Sergio Vega is a PhD student at the Institute of Computing of USI. He graduated on Informatics Engineering and later earned a MSc on Financial Technology and Computing at USI. He is interested in high performance computing and computational science for finance applications.