@inproceedings{1a4c6bf152ae4f879953a61b996e72bf,
title = "ADP: Automated diagnosis of performance pathologies using hardware events",
abstract = "Performance characterization of applications' hardware behavior is essential for making the best use of available hardware resources. Modern architectures offer access to many hardware events that are capable of providing information to reveal architectural performance bottlenecks throughout the core and memory hierarchy. These events can provide programmers with unique and powerful insights into the causes of the resource bottlenecks in their applications. However, interpreting these events has been a significant challenge. We present an automated system that uses machine learning to identify an application's performance problems. Our system provides programmers with insights about the performance of their applications while shielding them from the onerous task of digesting hardware events. It uses a decision tree algorithm, random forests on our micro-benchmarks to fingerprint the performance problems. Our system divides a profiled application into functions and automatically classifies each function by the dominant hardware resource bottlenecks. Using the classifications from the hotspot functions, we were able to achieve an average speedup of 1.73 from three applications in the PARSEC benchmark suite. Our system provides programmers with a guideline of where, what, and how to fix the detected performance problems in applications, which would have otherwise required considerable architectural knowledge.",
keywords = "fingerprint, hardware event, machine learning, micro-benchmark, performance analysis, resource bottleneck",
author = "Wucherl Yoo and Kevin Larson and Lee Baugh and Sangkyum Kim and Campbell, {Roy H.}",
year = "2012",
month = aug,
day = "13",
doi = "10.1145/2254756.2254791",
language = "English (US)",
isbn = "9781450310970",
series = "Performance Evaluation Review",
number = "1 SPEC. ISS.",
pages = "283--294",
booktitle = "SIGMETRICS/Performance 2012 - Proceedings of the 2012 ACM SIGMETRICS/Performance, Joint International Conference on Measurement and Modeling of Computer Systems",
edition = "1 SPEC. ISS.",
note = "12th Joint International Conference on Measurement and Modeling of Computer Systems, ACM SIGMETRICS/Performance 2012 ; Conference date: 11-06-2012 Through 15-06-2012",
}