Knowledge support and automation for performance analysis with PerfExplorer 2.0
Scientific Programming - Large-Scale Programming Tools and Environments
Capturing performance knowledge for automated analysis
Proceedings of the 2008 ACM/IEEE conference on Supercomputing
Reducing search space of auto-tuners using parallel patterns
IWMSE '09 Proceedings of the 2009 ICSE Workshop on Multicore Software Engineering
Automatic performance debugging of SPMD-style parallel programs
Journal of Parallel and Distributed Computing
Model-Based relative performance diagnosis of wavefront parallel computations
HPCC'06 Proceedings of the Second international conference on High Performance Computing and Communications
Model-based performance diagnosis of master-worker parallel computations
Euro-Par'06 Proceedings of the 12th international conference on Parallel Processing
Hi-index | 0.00 |
Scientific parallel programs often undergo significant performance tuning before meeting their performance expectation. Performance tuning naturally involves a diagnostic process—locating performance bugs that make a program inefficient and explaining them in terms of high-level program design. We present a systematic approach to generating performance knowledge for automatically diagnosing parallel programs. Our approach exploits program semantics and parallelism found in parallel programming patterns to search for and define bugs. The approach addresses how to extract the expert knowledge required for performance diagnosis from parallel patterns and represents this knowledge in a manner such that the diagnostic process can be automated. We demonstrate the effectiveness of our knowledge-engineering approach through a case study. Our experience diagnosing divide-and-conquer programs shows that pattern-based performance knowledge can provide effective guidance for locating and defining performance bugs at a high level of program abstraction. Copyright © 2006 John Wiley & Sons, Ltd.