2021 · 2021 IEEE International Systems Conference (SysCon)
System Execution Path Profiling Using Hardware Performance Counters
Evidence basis: full-text-reviewed · Review status: catalog-reviewed; paper-author approval pending
performance-analysis resource-analysis multicore-systems system-tracing
execution paths hardware performance counters critical-path profiling CPython PyPMU Linux perf perf NMI LTTng-UST libunwind sampling SysCon 2021
Core contribution: The work bridges kernel-level hardware-counter sampling and user-space interpreter state so execution-path profiling can attribute performance evidence to interpreted code.
Catalog abstract summary
The related public chapter describes low-intrusion execution-path profiling that forwards hardware performance-counter overflows from the kernel to user space, where a CPython profiler records interpreted-code call stacks and LTTng-UST stores the samples.
Source: Exact Overleaf-generated author-manuscript candidate cross-checked with public thesis Chapter 6 and the official SysCon program; the thesis is the public full-text route and is not the SysCon Version of Record.
Problem and motivation
Kernel execution paths expose where distributed or heterogeneous tasks wait, but hardware-counter samples normally identify native instructions and lose the connection to interpreted-language statements; profiling inside the kernel also risks violating runtime isolation and NMI-time constraints.
Method and contribution
The related public chapter uses Linux perf to receive PMU overflow notifications in the kernel NMI handler, forwards an event to user space with a signal, and implements PyPMU for CPython. User-space code records interpreter/call-stack state; LTTng-UST writes the samples to a ring buffer, while online and offline libunwind-based stack recovery are compared. The chapter also relates the profiler to kernel-trace execution paths and reports an evaluation on an Intel i7-4770 system with 16 GB RAM, Ubuntu 14.04, and Linux 3.13.
Findings and evidence
The related chapter reports 0.1% RMS profile error on its calibrated function benchmark, 2.93 microseconds average event-forwarding cost over 10^6 samples, and 4.15 microseconds for counter management and signal setup. It reports online unwinding as preferable under the tested depth limit, LTTng-UST as at least 25 times faster than built-in Python traceback recording, and approximately 25% lower trace storage in that comparison. These measurements come from the public thesis chapter and are not claimed as independently rechecked against the IEEE SysCon PDF.
Limitations and future directions
Limitations: The original Overleaf project contained an extraneous compile-log fragment; a separate cleanup copy removed it, recompiled successfully, and added the IEEE author-manuscript notice. The signed SysCon publication agreement and any venue-specific self-archiving wording were not independently inspected. The public full-text route remains a related 2015 thesis chapter rather than the standalone IEEE SysCon manuscript. The evaluation is centered on CPython, one Linux environment, synthetic/calibrated profiling workloads, and the reported monitoring comparisons; broader runtimes, hardware generations, and production distributed workloads remain unverified.
Future work: The chapter identifies integration with task-execution-path extraction and Trace Compass, support for additional runtimes, replacing signals with user-level interrupts, handling signal-blocking limitations, and reducing redundant call-stack trace data as future directions.
Sources and identifiers
- Published version published
- Related public thesis chapter plus cleaned local Overleaf manuscript candidate with IEEE rights notice · PDF public_related_full_text
When to cite this paper
Cite this paper when its specific method, evidence, or benchmark is directly relevant.
- The paper's method is directly relevant.
- The paper's evidence or benchmark is directly relevant.
Citation
@inproceedings{ezzatiJivan2021systemexecution,
author = {Francis Giraldeau and Naser Ezzati-Jivan and Michel R. Dagenais},
title = {System Execution Path Profiling Using Hardware Performance Counters},
year = {2021},
booktitle = {2021 IEEE International Systems Conference (SysCon)},
pages = {1-8},
publisher = {IEEE},
doi = {10.1109/SYSCON48628.2021.9447121},
url = {https://doi.org/10.1109/SYSCON48628.2021.9447121}
}Other citation formats for Word and reference managers
Giraldeau, F., Ezzati-Jivan, N., & Dagenais, M. R. (2021). System Execution Path Profiling Using Hardware Performance Counters. In 2021 IEEE International Systems Conference (SysCon) (pp. 1-8). https://doi.org/10.1109/SYSCON48628.2021.9447121F. Giraldeau, N. Ezzati-Jivan, and M. R. Dagenais, "System Execution Path Profiling Using Hardware Performance Counters," in 2021 IEEE International Systems Conference (SysCon), pp. 1-8, 2021, doi: 10.1109/SYSCON48628.2021.9447121