Critical lock analysis: Diagnosing critical section bottlenecks in multithreaded applications
Paper in proceedings, 2012

Critical sections are well known potential performance bottlenecks in multithreaded applications and identifying the ones that inhibit scalability are important for performance optimizations. While previous approaches use idle time as a key measure, we show such a measure is not reliable. The reason is that idleness does not necessarily mean the critical section is on the critical path. We introduce critical lock analysis, a new method for diagnosing critical section bottlenecks in multithreaded applications. Our method firstly identifies the critical sections appearing on the critical path, and then quantifies the impact of such critical sections on the overall performance by using quantitative performance metrics. Case studies show that our method can successfully identify critical sections that are most beneficial for improving overall performance as well as quantify their performance impact on the critical path, which results in a more reliable establishment of the inherent critical section bottlenecks than previous approaches.

Author

Guancheng Chen

Chalmers, Computer Science and Engineering (Chalmers), Computer Engineering (Chalmers)

IBM

Per Stenström

Chalmers, Computer Science and Engineering (Chalmers), Computer Engineering (Chalmers)

24th International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2012; Salt Lake City, UT; United States; 10 November 2012 through 16 November 2012; Category numberCFP12SUP-ART; Code 96874

2167-4337 (eISSN)

Subject Categories

Computer and Information Science

DOI

10.1109/SC.2012.40

More information

Latest update

3/19/2019