Portable Targeted Sampling Framework Using LLVM
Zhantong Qiu, Mahyar Samani, Jason Lowe-Power
TL;DR
Nugget tackles the challenge of evaluating architectural ideas on realistic workloads by enabling portable, binary-independent sampling through LLVM IR interval analysis and cross-platform nuggets. The framework runs interval analysis on real hardware, generates portable nuggets with start and end markers, and validates samples on native hardware before employing them in simulation, dramatically reducing overhead and enabling cross-system comparisons. Its two main contributions are an efficient, hardware-friendly interval analysis workflow and a flexible nugget creation/validation pipeline that supports diverse sampling methodologies. This approach accelerates research iteration, enables more representative workload reduction, and provides practical cross-architecture validation for full-system simulations.
Abstract
Evaluating architectural ideas on realistic workloads is increasingly challenging due to the prohibitive cost of detailed simulation and the lack of portable sampling tools. Existing targeted sampling techniques are often tied to specific binaries, incur significant overhead, and make rapid validation across systems infeasible. To address these limitations, we introduce Nugget, a flexible framework that enables portable sampling across simulators, hardware, architectural differences, and libraries. Nugget leverages LLVM IR to perform binary-independent interval analysis, then generates lightweight, cross-platform executable snippets (nuggets), that can be validated natively on real hardware before use in simulation. This approach decouples samples from specific binaries, dramatically reduces analysis overhead, and allows researchers to iterate on sampling methodologies while efficiently validating samples across diverse systems.
