Nice summary of Coz.
Coz: Finding code that counts with causal profiling – Curtsinger & Berger 2015
update: fixed typo in paper title
Sticking to the theme of ‘understanding what our systems are doing,’ but focusing on a single process, Coz is a causal profiler. In essence, it makes the output of a profiler much more useful to you by showing you where optimisations would genuinely have a beneficial effect (which doesn’t always equate with the places programs spend the most time). Interestingly, it can also show you places where locally optimising performance will actually slow down the overall system. That might sound counter-intuitive: the Universal Scalability Law gives us some clues as to why this might be. The understanding gained from finding such locations is also very useful in optimising the application overall.
Conventional proﬁlers rank code by its contribution to total execution time. Prominent examples include oproﬁle, perf, and gprof. Unfortunately, even…
View original post 1,647 more words