Table of Contents
Fetching ...

SPACE-Timers -- A Stack-Based Hierarchical Timing System for C++

Geray S. Karademir, Klaus Dolag

Abstract

SPACE-Timers are a lightweight hierarchical profiling framework for C++ designed for modern high-performance computing (HPC) applications. It uses a stack-based timing model to capture deeply nested execution patterns with minimal overhead, representing runtime behaviour as a tree of timing nodes with precise attribution. The framework provides structured reports with recursive aggregation, detection of unaccounted time, and compact visual summaries of runtime distribution, supporting both quick inspection and detailed analysis. It also includes checkpointing and error detection mechanisms. SPACE-Timers supports multiple profiling backends, including NVTX, ITT, ROCtx, and Omnitrace, and integrates with the MERIC runtime system to enable energy-aware optimisation. Its successful use in OpenGadget3 demonstrates its effectiveness for large-scale scientific applications.

SPACE-Timers -- A Stack-Based Hierarchical Timing System for C++

Abstract

SPACE-Timers are a lightweight hierarchical profiling framework for C++ designed for modern high-performance computing (HPC) applications. It uses a stack-based timing model to capture deeply nested execution patterns with minimal overhead, representing runtime behaviour as a tree of timing nodes with precise attribution. The framework provides structured reports with recursive aggregation, detection of unaccounted time, and compact visual summaries of runtime distribution, supporting both quick inspection and detailed analysis. It also includes checkpointing and error detection mechanisms. SPACE-Timers supports multiple profiling backends, including NVTX, ITT, ROCtx, and Omnitrace, and integrates with the MERIC runtime system to enable energy-aware optimisation. Its successful use in OpenGadget3 demonstrates its effectiveness for large-scale scientific applications.
Paper Structure (11 sections, 1 figure)

This paper contains 11 sections, 1 figure.

Figures (1)

  • Figure 1: One timestep of the blast wave test run with OpenGadget3 visualised in NVIDIA Nsight Systems with NVTX annotation activated.