How to write parallel programs: a guide to the perplexed
ACM Computing Surveys (CSUR)
Debugging heterogeneous distributed systems using event-based models of behavior
ACM Transactions on Computer Systems (TOCS)
Using cause-effect analysis to understand the performance of distributed programs
SPDT '98 Proceedings of the SIGMETRICS symposium on Parallel and distributed tools
Proceedings of the 14th international conference on Supercomputing
A theory and architecture for automating performance diagnosis
Future Generation Computer Systems - I. High Performance Numerical Methods and Applications. II. Performance Data Mining: Automated Diagnosis, Adaption, and Optimization
HiPC '02 Proceedings of the 9th International Conference on High Performance Computing
Patterns and skeletons for parallel and distributed computing
Patterns and skeletons for parallel and distributed computing
Knowledge engineering for automatic parallel performance diagnosis: Research Articles
Concurrency and Computation: Practice & Experience - European–American Working Group on Automatic Performance Analysis (APART)
Rule-based automatic software performance diagnosis and improvement
WOSP '08 Proceedings of the 7th international workshop on Software and performance
Knowledge support and automation for performance analysis with PerfExplorer 2.0
Scientific Programming - Large-Scale Programming Tools and Environments
Perflint: A Context Sensitive Performance Advisor for C++ Programs
Proceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization
Rule-based automatic software performance diagnosis and improvement
Performance Evaluation
Rule-based automatic software performance diagnosis and improvement
Performance Evaluation
Fine tuning algorithmic skeletons
Euro-Par'07 Proceedings of the 13th international Euro-Par conference on Parallel Processing
Parallel computing for phase-field models
International Journal of High Performance Computing Applications
Hi-index | 0.01 |
Parallel performance tuning naturally involves a diagnosis process to locate and explain sources of program inefficiency. Proposed is an approach that exploits parallel computation patterns (models) for diagnosis discovery. Knowledge of performance problems and inference rules for hypothesis search are engineered from model semantics and analysis expertise. In this manner, the performance diagnosis process can be automated as well as adapted for parallel model variations. We demonstrate the implementation of model-based performance diagnosis on the classic Master-Worker pattern. Our results suggest that pattern-based performance knowledge can provide effective guidance for locating and explaining performance bugs at a high level of program abstraction.