Springer, 2023. — 259 p. — ISBN 978-981-99-4365-4.
This book presents a hybrid static-dynamic approach for efficient performance analysis of parallel applications on HPC systems. Performance analysis is essential to finding performance bottlenecks and understanding the performance behaviors of parallel applications on HPC systems. However, current performance analysis techniques usually incur significant overhead. Our book introduces a series of approaches for lightweight performance analysis.We combine static and dynamic analysis to reduce the overhead of performance analysis. Based on this hybrid static-dynamic approach, we then propose several innovative techniques for various performance analysis scenarios, including communication analysis, memory analysis, noise analysis, computation analysis, and scalability analysis. Through these specific performance analysis techniques, we convey to readers the idea of using static analysis to support dynamic analysis.To gain the most from the book, readers should have a basic grasp of parallel computing, computer architecture, and compilation techniques.
Background and Overview
Performance Analysis Methods: Communication AnalysisFast Communication Trace Collection
Structure-Based Communication Trace Compression
Performance Analysis Methods: Memory AnalysisInformed Memory Access Monitoring
Performance Analysis Methods: Scalability AnalysisGraph Analysis for Scalability Analysis
Performance Prediction for Scalability Analysis
Performance Analysis Methods: Noise AnalysisLightweight Noise Detection
Production-Run Noise Detection
Performance Analysis FrameworkDomain-Specific Framework for Performance Analysis
Conclusion and Future Work