Pith. sign in

REVIEW 2 cited by

Hardware Counted Profile-Guided Optimization

Not yet reviewed by Pith; the record is open.

This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.

SPECIMEN: schema-true, not a live event

T0 review · schema-true

One-sentence machine reading of the paper's core claim.

pith:XXXXXXXX · record.json · timestamp

arxiv 1411.6361 v1 pith:XDKDGDID submitted 2014-11-24 cs.PL

Hardware Counted Profile-Guided Optimization

classification cs.PL
keywords averageonlyoverheadsolutionbetterhardwareinstrumentation-basedoptimization
verification ladder T0 review T1 audit T2 compute T3 formal T4 reserved
0 comments
read the original abstract

Profile-Guided Optimization (PGO) is an excellent means to improve the performance of a compiled program. Indeed, the execution path data it provides helps the compiler to generate better code and better cacheline packing. At the time of this writing, compilers only support instrumentation-based PGO. This proved effective for optimizing programs. However, few projects use it, due to its complicated dual-compilation model and its high overhead. Our solution of sampling Hardware Performance Counters overcome these drawbacks. In this paper, we propose a PGO solution for GCC by sampling Last Branch Record (LBR) events and using debug symbols to recreate source locations of binary instructions. By using LBR-Sampling, the generated profiles are very accurate. This solution achieved an average of 83% of the gains obtained with instrumentation-based PGO and 93% on C++ benchmarks only. The profiling overhead is only 1.06% on average whereas instrumentation incurs a 16% overhead on average.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 2 Pith papers

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. AI-PROPELLER: Warehouse-Scale Interprocedural Code Layout Optimization with AlphaEvolve

    cs.SE 2026-05 unverdicted novelty 7.0

    AI-PROPELLER uses AlphaEvolve to evolve interprocedural code layout heuristics in Propeller and reports 0.23-1.6% gains on warehouse-scale applications via real hardware measurements.

  2. AutoPass: Evidence-Guided LLM Agents for Compiler Performance Tuning

    cs.SE 2026-06 unverdicted novelty 6.0

    AutoPass uses evidence from compiler states and runtime feedback to guide LLM agents in tuning LLVM optimizations, delivering 1.043x and 1.117x geometric-mean speedups over -O3 on x86-64 and ARM64.