arrow
Return

Automatic performance debugging of SPMD-style parallel programs

delete2011-07-01
delete7
delete
OA
AI
X
Xu Liu
J
Jianfeng Zhan *
K
Kunlin Zhan
W
Weisong Shi
Y
Yuan Lin
D
Dan Meng
王磊 (Lei Wang)
DOI:10.1016/j.jpdc.2011.03.006delete
deleteOriginal
deleteShare
deleteSave
View PDF
Abstract

Abstract

En 中文
Automatic performance debugging of parallel applications includes two main steps: locating performance bottlenecks and uncovering their root causes for performance optimization. Previous work fails to resolve this challenging issue in two ways: first, several previous efforts automate locating bottlenecks, but present results in a confined way that only identifies performance problems with a priori knowledge: second, several tools take exploratory or confirmatory data analysis to automatically discover relevant performance data relationships, but these efforts do not focus on locating performance bottlenecks or uncovering their root causes. The simple program and multiple data (SPMD) programming model is widely used for both high performance computing and Cloud computing. In this paper, we design and implement an innovative system, AutoAnalyzer, that automates the process of debugging performance problems of SPMD-style parallel programs, including data collection, performance behavior analysis, locating bottlenecks, and uncovering their root causes. AutoAnalyzer is unique in terms of two features: first, without any prior knowledge, it automatically locates bottlenecks and uncovers their root causes for performance optimization; second, it is lightweight in terms of the size of performance data to be collected and analyzed. Our contributions are three-fold: first, we propose two effective clustering algorithms to investigate the existence of performance bottlenecks that cause process behavior dissimilarity or code region behavior disparity, respectively; meanwhile, we present two searching algorithms to locate bottlenecks; second, on the basis of the rough set theory, we propose an innovative approach to automatically uncover root causes of bottlenecks; third, on the cluster systems with two different configurations, we use two production applications, written in Fortran 77, and one open source code MPIBZIP2 (http://compression.ca/mpibzip2/), written in C++, to verify the effectiveness and correctness of our methods. For three applications, we also propose an experimental approach to investigating the effects of different metrics on locating bottlenecks. (C) 2011 Elsevier Inc. All rights reserved.
Keywords:
SPMD parallel programs
Automatic performance debugging
Performance bottleneck
Root cause analysis
Performance optimization
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

Journal of Parallel and Distributed Computing cover
Journal of Parallel and Distributed Computing
IF:
4
Papers:
3.8K
Citations:
4.8K

Organization

I
institute of computing technology, cas
Scholars:
1.0K
Papers: 877
Citations: 1
W
wayne state university
Scholars:
2.0W
Papers: 1.6W
Citations: 17
C
chinese academy of sciences
Scholars:
56.2W
Papers: 44.8W
Citations: 704
researcher View more organizations