In this talk, I describe a deep problem in computer performance analysis and our solution, Shim, which improves fidelity by three or more orders of magnitude. Developers and architects spend a lot of time trying to understand and eliminate performance problems. Unfortunately, the root causes of many problems occur at a fine granularity that existing continuous profiling and direct measurement approaches cannot observe.
I will describe Shim, a continuous profiler that samples at resolutions as fine as 15 cycles; three to five orders of magnitude finer than current continuous profilers. Shim's fine-grain measurements reveal new behaviors, such as variations in instructions per cycle (IPC) within the execution of a single function. This work was led by my student Xi Yang and is joint work with my collaborator Kathryn McKinley, who is at Google.
Steve Blackburn is a professor in the Research School of Computer Science at the Australian National University and a Fellow of the ACM. His research interests include programming language implementation, architecture, and performance analysis.