Detection of false sharing using machine learning

  • Authors:
  • Sanath Jayasena;Saman Amarasinghe;Asanka Abeyweera;Gayashan Amarasinghe;Himeshi De Silva;Sunimal Rathnayake;Xiaoqiao Meng;Yanbin Liu

  • Affiliations:
  • University of Moratuwa, Sri Lanka;Massachusetts Institute of Technology, Cambridge;University of Moratuwa, Sri Lanka;University of Moratuwa, Sri Lanka;University of Moratuwa, Sri Lanka;University of Moratuwa, Sri Lanka;IBM Research, Yorktown Heights, New York;IBM Research, Yorktown Heights, New York

  • Venue:
  • SC '13 Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

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 sharing. 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.