tailieunhanh - Large Event Traces in Parallel Performance Analysis
powerful and widely-used method for analyzing the performance behavior of parallel programs is event tracing. When an application is traced, performancerelevant events, such as entering functions or sending messages, are recorded at runtime and analyzed post-mortem to identify and potentially remove performance problems. While event tracing enables the detection of performance problems at a high level of detail, growing trace-file size often constrains its scalability on large-scale systems and complicates management, analysis, and visualization of trace data. In this article, we survey current approaches to handle large traces and classify them according to the primary issues they address and the primary benefits they offer. Keywords: parallel computing, performance analysis,. | Large Event Traces in Parallel Performance Analysis Felix Wolf1 Felix Freitag2 Bernd Mohr1 Shirley Moore3 Brian Wylie1 1Forschungszentrum Julich ZAM 52425 Julich Germany @ 2Universitat Politecnica de Catalunya Computer Architecture Dept. 08034 Barcelona Spain felix@ 3University of Tennessee Innovative Computing Laboratory Knoxville TN 37996 UsA shirley@ Abstract A powerful and widely-used method for analyzing the performance behavior of parallel programs is event tracing. When an application is traced performancerelevant events such as entering functions or sending messages are recorded at runtime and analyzed post-mortem to identify and potentially remove performance problems. While event tracing enables the detection of performance problems at a high level of detail growing trace-file size often constrains its scalability on large-scale systems and complicates management analysis and visualization of trace data. In this article we survey current approaches to handle large traces and classify them according to the primary issues they address and the primary benefits they offer. Keywords parallel computing performance analysis event tracing scalability. 1 Introduction Event tracing is a powerful and widely-used method for analyzing the performance of parallel programs. In the context of developing parallel programs tracing is especially effective for observing the interactions between different processes or threads that occur during communication or synchronization operations and to analyze the way concurrent activities influence each other s peflormance. Traditionally developers of parallel programs use tracing tools such as Vampir NWHS96 to visualize the program behavior along the time axis in the style of a Gantt chart Figure 1 where local activities are represented as boxes with a distinct color. Interactions between processes are indicated by arrows or polygons to illustrate the exchange of messages or the
đang nạp các trang xem trước