Chapter 12

Traces

This chapter defines and motivates our interest in low-overhead tracing tools, in contrast to simpler counting and profiling tools.

As we discussed in the previous chapter, counters either count individual events such as packets sent or sum quantities such as bytes written to disk.

Profiles periodically count samples of some quantity. The most common quantity is the program counter value, PC, for a CPU core while it is running an individual program. With enough samples, the resulting profile shows approximately where all the CPU time was spent during the timespan being profiled. CPU profiles, however, are completely blind to the time a program spends waiting and not executing at all. They may also be blind to other threads ...

Get Understanding Software Dynamics now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.