Publication Details: UM-CS-2014-018

Causal Profiling: Finding Optimizations that Count

Publication Type:Technical Report
Author(s):C. M. Curtsinger, E. D. Berger
Abstract:While traditional profilers reveal where a program spends its time,
they do not indicate where developers should spend their time. This
paper introduces causal profiling, a novel profiling approach
that not only indicates exactly where programmers should focus their
optimization efforts, but also quantifies their potential impact.
Causal profiling works by performing a series of performance
experiments at runtime. These experiments quantify the impact of any
potential optimization via virtual speedups, which emulate the
effect of real speedups by slowing down concurrently-executing
tasks. Causal profiling further departs from traditional profilers by
identifying optimization opportunities that increase throughput or
reduce latency. We present Coz, a prototype causal profiler, and
empirically demonstrate its efficiency and effectiveness at guiding
optimization efforts.
Document: [AVAILABLE HERE]
Submitted on:2014-11-14