performane analyzer performance analysis and visualization of large-scale uintah simulations kai li,...
TRANSCRIPT
Performane Analyzer
Performance Analysis and Visualization of Large-Scale Uintah Simulations
Kai Li, Allen D. Malony, Sameer Shende, Robert BellPerformance Research Laboratory, University of Oregon
UintahApplication
PerformanceSteering Performance
Visualizer
PerformanceAnalyzer
PerformanceData Reader
TAUPerformance
System
PerformanceData Integrator
SCIRun
parallelperformancedata streams
parallelperformancedata output
(Parallel)File system
• sample sequencing• reader synchronization
accumulatedprofile
samples
socket
EPILOG
Paraver
....
..Reduction
Arithmetic
Filter
The ParaVis system is an environment to analyze and visualize performance data from the execution of large-scale Uintah applications. The TAU performance system is used to measure performance behavior of Uintah programs, producing performance profiles during execution. The ParaVis monitor reads the profile samples at runtime and processes the data with analysis and visualization components developed in the SCIRun computational environment. SCIRun provides a programmable framework for building and linking the analysis and visualization components. Analysis components include arithmetic modules, reduction modules, and various filters that transform performance data in different ways. Performance visualizer components use a generic 3D performance plotting library as well as the visualization support in SCIRun to display performance results interactively in real time.
Any portion of a parallel performance profile can be selected by ParaVis for analysis and display. The TAU performance system can capture detailed measurements for multiple performance metrics, including execution time and hardware counts. The ParaVis Bargraph visualizer is useful to display two performance metrics jointly for each thread of execution, one metric reflected in the height of the bar and the other metric code in the bar’s color. The SCIRun network below is being used in the left view to select and present MPI performance behavior. The middle view highlights performance effects associated with Uintah simulation components. Exclusive time and number of calls are shown for 512 threads of execution, and the display redraws at each time step. The Scatterplot visualization on the right is another example of a multi-metric performance display where, in this case, the execution times for three MPI events are used to determine the relative coordinates for a thread point whose color signifies a fourth performance value.
Sample 1
Sample 2
Sample k
…
NFS File System
PerformanceData
Intergration
Sample i
n: 1 n: 2 n: j…
c: 1 c: 2 c: k… c: 1 c: 2 c: k…
t: 1 t: 2 t: l… t: 1 t: 2 t: l…
Sample 1 Sample k… …
p p p p p p Perf
orm
ance
acc
ess m
etho
ds
Performance Data Reader
Select
Buildup
Add
Divide
Sum
SCIRun
Performance Visualizer
Terrain Barplot
ScatterplotLineplot
GLTextureBuilder TextureVolVis
ShowField
Performance Plotting Library
…
ParaVis
ParaVis is able to analyze and visualize performance data from multiple profile samples generated at important time steps during an Uintah application execution. This can be done online, providing dynamic and interactive performance views, or post-mortem. The analysis modules can also aggregate performance data for major event groups. The SCIRun dataflow network shown on the right processes execution time data for four groups and displays multiple time steps with the Terrain visualizer. The performance data is from a 512-processor colliding disks simulation on ASCI Blue Pacific.
Mean
Because ParaVis is implemented within the SCIRun environment, it is possible to associate performance information with domain-specific aspects of the Uintah computation. The dataflow network at the right analyzes the performance of the colliding disks benchmark computation with a simple load balancer. The computation simulates the collision of two gelatinous disks. Here, the physical problem domain is partitioned into 16x16x2 patches. TAU maps performance data to the different patches to gain a sense of computational load distribution across patches. ParaVis can then visualize, for example, the task time (bottom left) and MPI time (bottom right) with respect to a problem domain (i.e., patches) representation.
TAU Performance System