Our case studies illustrated many points:
Prism profiling can be very simple, requiring no special compilation or linking and only two extra mouse clicks, one for data collection and one for data display, to bring up the basic timeline window.
Prism profiling of MPI jobs provides a quick overview of what MPI calls are made and it allows a developer to discern visually various patterns of messages, including outer-most iterations, different phases within each iteration, periods during which groups of processes advance in lockstep, and so on.
The Table format presents summary statistics that allow a developer to understand which MPI routines, message sizes, or other characteristics account for an appreciable fraction of the run time.
Often, a great deal of the time spent in MPI routines is spent not in moving data, but in waiting on partner processes. This is especially true for collective operations, and Prism provides users with multiple views of this behavior.
Prism provides scatter-plot displays which show times spent in individual MPI routines. By clicking on high-latency points, one can quickly find the needles in the haystack that account for much of the MPI time.
Prism allows a developer to navigate through a timeline to understand what message-passing events surround a performance hotspot - that is, what conditions prevail when performance is slow.