Papers
Topics
Authors
Recent
Search
2000 character limit reached

Score-P: HPC Performance Measurement

Updated 8 July 2026
  • Score-P is a scalable performance measurement infrastructure for HPC codes that instruments events such as function calls, MPI communications, and threading activities.
  • It produces standardized profiles and event traces, facilitating detailed timeline analysis with tools like Vampir, Scalasca, Periscope, and TAU.
  • Its unified data model supports concurrent analysis across CPU, accelerator, and MPI events, improving performance tuning in diverse HPC environments.

Searching arXiv for relevant papers on Score-P in HPC and related instrumentation support. Score-P is a general-purpose performance measurement infrastructure for high-performance computing codes and is described as a “highly scalable tool for profiling and event tracing of HPC applications” (Gocht et al., 2020, Corbin, 8 Aug 2025). In the HPC tool ecosystem it functions as a joint runtime measurement system used underneath tools such as Periscope, Scalasca, TAU, and Vampir, with the role of recording execution events and performance-relevant data during program execution rather than serving as the primary visualization layer (Gocht et al., 2020, Tschüter et al., 2017). Its core purpose is to instrument applications, record function entry and exit, MPI communication, threading activity, accelerator offload, and related runtime events, and produce profiles and event traces for subsequent analysis (Gocht et al., 2020).

1. Position in the HPC tool ecosystem

Score-P (“Scalable Performance Measurement Infrastructure for Parallel Codes”) is presented as a monitoring and measurement substrate shared by several established HPC tools, including Vampir, Scalasca, Periscope, and TAU (Gocht et al., 2020, Tschüter et al., 2017). The infrastructure records performance data about parallel applications in two principal forms: profiling, which summarizes execution such as time spent in functions and MPI calls, and event tracing, which records a chronological stream of events such as region entry and exit and communication operations (Corbin, 8 Aug 2025).

In the usual workflow, an application is built or run with Score-P, Score-P generates profiles or traces, and the resulting measurement data are analyzed with tools such as Vampir for interactive timeline visualization and Cube and Scalasca for scalable profile analysis (Gocht et al., 2020). This division of labor is central to Score-P’s design: it is the measurement engine that gets control on relevant runtime events, records timestamps and region identifiers, and writes the resulting data to standardized formats that downstream tools consume (Tschüter et al., 2017).

This architecture places Score-P at the center of a broader performance-engineering pipeline. A plausible implication is that Score-P’s significance lies less in any single user-facing interface than in the fact that it standardizes instrumentation and event collection across languages, programming models, and analysis environments.

2. Measurement model, events, and data products

Score-P is designed to record detailed performance information for function entry and exit, MPI communication, threading such as pthreads and OpenMP, accelerator offload such as CUDA, and I/O and other runtime events via plugins and substrate interfaces (Gocht et al., 2020). In the LLVM instrumentation context, the hook interface is described through register_region(&descr), enter_region(handle), and exit_region(handle), with metadata including function name, file, and line range (Tschüter et al., 2017).

The infrastructure produces two principal data products. First, it generates profiles, including Cube4 profiles, which aggregate metrics per function or region (Gocht et al., 2020). Second, it generates event traces, including OTF2 traces, which preserve time-stamped event sequences and support timeline-oriented analysis (Gocht et al., 2020). In the Python bindings, forwarded Python events become regions with attributes such as file, line, module, and name, and these are emitted as the usual time-stamped events in OTF2 traces and Cube4 profiles (Gocht et al., 2020).

The data model is explicitly unified across language layers and runtime mechanisms. Python functions can appear in the same analysis tools as native code, with correct call stacks and timestamps, while MPI calls, CUDA operations, and thread regions remain visible in the same trace (Gocht et al., 2020). In the Jacobi solver example discussed for the LLVM plug-in, Score-P simultaneously captures user function calls, MPI operations, and OpenMP parallel regions and loops, and Vampir displays these as distinct timeline elements (Tschüter et al., 2017).

This unified event model is one of Score-P’s defining characteristics. It supports a correlated analysis of application-level regions with communication and accelerator activity rather than isolating each subsystem in separate profilers.

3. Instrumentation architecture and selective compilation support

Score

Definition Search Book Streamline Icon: https://streamlinehq.com
References (3)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Score-P.