Understanding Software Dynamics by Richard L. Sites

Understanding Software Dynamics by Richard L. Sites

Author:Richard L. Sites [Richard L. Sites]
Language: eng
Format: epub
Publisher: Addison-Wesley Professional
Published: 2021-12-06T16:00:00+00:00


Figure 12.2a CPU-time function profile of early Gmail offline test

As we have discussed, profiles average together normal and unusual transactions, making it impossible to see what is different about the unusual ones. Profiling is the wrong tool for understanding variation. To emphasize this, Figure 12.2b highlights three of the functions we discover through tracing that are called only in slow transactions.

Figure 12.2b Three functions used only in slow transactions

The profile has another major flaw—it covers only CPU execution time, not wait time. The sum of these two is elapsed time (we are dealing with only one thread here). Figure 12.2c shows the true profile of elapsed time, including the two dominant routines on the right that are missing from Figures 12.2a and 12.2b. They wait for critical section locks (semaphore::) and wait for new work (SelectServer), accounting for over half of the elapsed time. In particular, waiting for locks takes over 40% of the elapsed time.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.