Detection of false sharing using machine learning
No Thumbnail Available
Date
2015-06-19
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
False sharing is a major class of performance bugs in parallel applications. Detecting false sharing is difficult as it does not change the program semantics. We introduce an efficient and effective approach for detecting false sharing based on machine learning.
We develop a set of mini-programs in which false sharing can be turned on and off. We then run the mini-programs both with and without false sharing, collect a set of hardware performance event counts and use the collected data to train a classifier. We can use
the trained classifier to analyze data from arbitrary programs for detection of false haring.
Experiments with the PARSEC and Phoenix benchmarks show that our approach is indeed effective. We detect published false sharing regions in the benchmarks with zero false positives. Our performance penalty is less than 2%. Thus, we believe that this is
an effective and practical method for detecting false sharing.
Description
Keywords
False sharing, Machine Learning, Performance events