Profiling Collecting data about the way a program behaves as it runs. Instrument the executable Choose a typical run Run it and gather data The GNU Profiler - gprof Callgraph Which functions call each other? PC Histogram Where does the program spend most of its time?