most of the computing time. However, profiles should be interpreted with care. Given
the sophistication of compilers and the complexity of caching and memory effects
as well as the fact that profiling a program affects its performance, the statistics in a
profile can be only approximate.
Concentrate on the hot spots.After rewriting strstr, we profiled spamtest again and
found that 99.8% of the time was now spent in strstr alone, even though the whole
program was considerably faster. When a single function is so overwhelmingly the
bottleneck, there are only two ways to go: improve the function to use a better algorithm ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.