On Performance Debugging of Unnecessary Lock Contentions on Multicore Processors: A Replay-based Approach
Long Zheng, Xiaofei Liao, Bingsheng He, Song Wu, Hai Jin

TL;DR
This paper introduces PERFPLAY, a replay-based debugging framework that identifies and quantifies the performance impact of unnecessary lock contentions in multicore processors, improving understanding and optimization of concurrent program performance.
Contribution
PERFPLAY is a novel trace replay framework that detects and transforms unnecessary lock contentions, providing detailed performance analysis for multicore applications.
Findings
Unnecessary lock contentions cause significant performance overhead.
PERFPLAY effectively identifies critical lock contentions in real-world programs.
Transforming traces helps quantify the performance impact of lock contentions.
Abstract
Locks have been widely used as an effective synchronization mechanism among processes and threads. However, we observe that a large number of false inter-thread dependencies (i.e., unnecessary lock contentions) exist during the program execution on multicore processors, thereby incurring significant performance overhead. This paper presents a performance debugging framework, PERFPLAY, to facilitate a comprehensive and in-depth understanding of the performance impact of unnecessary lock contentions. The core technique of our debugging framework is trace replay. Specifically, PERFPLAY records the program execution trace, on the basis of which the unnecessary lock contentions can be identified through trace analysis. We then propose a novel technique of trace transformation to transform these identified unnecessary lock contentions in the original trace into the correct pattern as a new…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Distributed systems and fault tolerance · Cloud Computing and Resource Management
