CGO 2024
Sat 2 - Wed 6 March 2024 Edinburgh, United Kingdom
Tue 5 Mar 2024 17:10 - 17:30 at Tinto - Supporting Tools Chair(s): Ayal Zaks

Despite decades of improvement in compiler technology, it remains necessary to profile applications to improve performance. Existing profiling tools typically either sample hardware performance counters or instrument the program with extra instructions to analyze its execution. Both techniques are valuable with different strengths and weaknesses, but do not always correctly identify optimization opportunities.

We present OPTIWISE, a profiling tool that runs the program twice, once with low-overhead sampling to accurately measure performance, and once with instrumentation to accurately capture control flow and execution counts. OPTIWISE then combines this information to give a highly detailed per-instruction CPI metric by computing the ratio of samples to execution counts, as well as aggregated information such as costs per loop, source-code line, or function.

We evaluate OPTIWISE to show it has an overhead of 8.1$\mathbf{\times}$ geomean, and 57$\mathbf{\times}$ worst case on SPEC CPU2017 benchmarks. Using OPTIWISE, we present case studies of optimizing selected SPEC benchmarks on a modern x86 server processor. The per-instruction CPI metrics quickly reveal problems such as costly mispredicted branches and cache misses, which we use to manually optimize for effective performance improvements.

Tue 5 Mar

Displayed time zone: London change

16:10 - 17:30
Supporting ToolsMain Conference at Tinto
Chair(s): Ayal Zaks Mobileye
16:10
20m
Talk
Compiler Testing with Relaxed Memory Models
Main Conference
Luke Geeson University College London, Lee Smith Arm
16:30
20m
Talk
High-Throughput, Formal-Methods-Assisted Fuzzing for LLVM
Main Conference
Yuyou Fan University of Utah, John Regehr University of Utah
16:50
20m
Talk
EasyTracker: A Python Library for Controlling and Inspecting Program Execution
Main Conference
Théo Barollet University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG, Christophe Guillon University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG, Manuel Selva University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG, François Broquedis University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG, Florent Bouchez-Tichadou University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG, Fabrice Rastello University Grenoble Alpes - Inria - CNRS - Grenoble INP - LIG
Pre-print
17:10
20m
Talk
OptiWISE: Combining Sampling and Instrumentation for Granular CPI Analysis
Main Conference
Yuxin Guo University of Cambridge, Alexandra W. Chadwick University of Cambridge, Marton Erdos University of Cambridge, Utpal Bora University of Cambridge, Ilias Vougioukas Arm, Giacomo Gabrielli Arm, Timothy M. Jones University of Cambridge
Pre-print Media Attached