Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems...
Transcript of Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems...
![Page 1: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/1.jpg)
Syste
m Perfo
rman
ce
Performance VisualizationUsability and Reusability
Diane T. RoverDepartment of Electrical & Computer Engineering
www.egr.msu.edu/~rover
US/Venezuela Workshop on HPC 2000
![Page 2: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/2.jpg)
2Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Acknowledgements
• NSF ACI-9624149• DARPA DABT63-95-C-0072• Co-PIs
– Matt Mutka, Kurt Stirewalt
• Students– Aleks Bakic, Kuk-jin Lee, Abdul Waheed
![Page 3: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/3.jpg)
3Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Outline
• What is performance visualization?zation?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
![Page 4: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/4.jpg)
4Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Outline
• What is performance visualization?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
![Page 5: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/5.jpg)
5Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
What is performance visualization?
• Visualization: the process of forming a mental picture or vision of something not present to the sight
• Software visualization: use of typography, graphic design, and animation, with modern human-computer interaction and computer graphics technology, to facilitate both the human understanding and effective use of computer software
![Page 6: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/6.jpg)
6Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
What is performance visualization?
• Performance visualization: a type of software visualization that includes aspects such as hardware performance (also computation/system visualization)– Visualization of concurrency is a specific
concern for parallel and distributed systems
– Used to evaluate performance, verify correctness, diagnose problems, and gain insight into structure and execution behavior
![Page 7: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/7.jpg)
7Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
What is performance visualization?
• Static representation of system state– structure/content of a large database
• Dynamic execution behavior– runtime control flow – memory usage– interprocessor communication– graphs of metrics, e.g., utilization, traffic– application-specific views of data and
computations– etc.
![Page 8: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/8.jpg)
8Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Examples
IBM’s PV system configuration , showing activity on the system as a whole, including a process tree view, histogram of process runtimes, and strip charts of process and system activities.
Chapter 20 by Kimelman, Rosenburg, and Roth in Stasko, Domingue, Brown, and Price, Software Visualization -Programming as a Multimedia Experience, MIT Press, 1998.
![Page 9: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/9.jpg)
9Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
IBM’s PV system configuration
![Page 10: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/10.jpg)
10Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Examples
Lucent Technologies’ SeeSoft code display , showing an overview of many files and their statistics at once, here code age. The newest code is in red and the oldest in blue. Blue and green files represent more stable code.SeeSoft visualizes text files by mapping each line into a thin row, colored according to a statistic of interest derived from version control systems, static analysis, and profiling.
Chapter 21 by Eick in Stasko, Domingue, Brown, and Price, Software Visualization - Programming as a Multimedia Experience, MIT Press, 1998.
![Page 11: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/11.jpg)
11Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Lucent Technologies’ SeeSoft code display
![Page 12: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/12.jpg)
12Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Examples
Georgia Institute of Technology’s POLKA animationof a parallel minimum spanning tree program. The left view shows the graph and the spanning tree growing inside it. The right view shows the “closest” data structure maintained by the program.
Chapter 17 by Kraemer in Stasko, Domingue, Brown, and Price, Software Visualization - Programming as a Multimedia Experience, MIT Press, 1998.
![Page 13: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/13.jpg)
13Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Georgia Tech’s POLKA animationOLKA animation
![Page 14: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/14.jpg)
14Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
ExamplesStanford University’s Rivet visualization of thread scheduling algorithms in the Argus parallel rendering library. This visualization combines Gantt charts of per-CPU and per-thread scheduling data, milestones in the rendering process, and a dynamic view of the framebufferbeing generated by Argus. The dynamic display of theframebuffer synchronized to the data being displayed in the data windows provides a familiar application-based context for the user. The use of brushing between the various views allows otherwise disparate views to be used as a coherent whole.Hanrahan, Rivet Project, Stanford University, http://www-graphics.stanford.edu/projects/rivet/.
![Page 15: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/15.jpg)
15Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Stanford University’s Rivet visualization
![Page 16: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/16.jpg)
16Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Think about …
• How are these visualizations created?
• How are these visualizations used?
![Page 17: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/17.jpg)
17Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Steps in Visualization
1. Derive information from sources in the software development environment, static analysis of a program, and data collected during program execution – Instrumentation system collects data
2. Preprocess or analyze information– Format conversion, profiling, event-ordering, detection of
abstract events and global states, etc.
3. Represent or display the program/system graphically– Visualization system supports creating and using views– Display issues: effectiveness, concurrency, scalabililty,
application-specificity
![Page 18: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/18.jpg)
18Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Outline
• What is performance visualization?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
![Page 19: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/19.jpg)
19Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Instrumentation SystemsBaseline Reduced Instrumentation System Kernel
(BRISK)
• Lightweight, distributed IS• Portable, flexible LIS-ISM
model• Low-intrusion techniques • LIS on a node: internal
sensors in user processes, shared memory, external sensor
• ISM on same node as TIE, tools, CORBA extension
ISM
TP
LIS
Execution Environment
Tool IntegrationEnvironment
![Page 20: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/20.jpg)
20Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
• What is performance visualization?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
Outline
![Page 21: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/21.jpg)
21Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Systems
• History– Earliest visualization systems:
performance visualization tools such as ParaGraph (late 1980’s)
– Application-specific visualizations of concurrent programs (early 1990’s)
– Integrated frameworks for diagnosing performance problems, such as TAU, Paradyn, and Pablo (mid 1990’s)
![Page 22: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/22.jpg)
22Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Systems• Taxonomy
– Scope . What range of programs/machines can the system take as input for visualization? For example, can the system visualize the concurrent features?
– Content , or Abstraction . What subset of information about the program/machine is visualized by the system? For example, code versus control flow diagram.
– Method of Specification . How is the visualization specified? Some systems provide fixed visualizations, while others let the user customize visualizations.Chapter 1 by Price in Stasko, Domingue, Brown, and Price, Software Visualization - Programming as a Multimedia Experience, MIT Press, 1998.
![Page 23: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/23.jpg)
23Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Systems
• Taxonomy (continued)– Interface , or Interaction . How does the user of
the system interact with and control it? Navigation through a visualization is especially important for very large programs or data sets.
– Presentation , or Form . How is the system used to convey information? For example, what medium and graphical elements are used in the visualization? Does the system provide facilities for eliding information? for synchronizing multiple views?
![Page 24: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/24.jpg)
24Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visual Displays• Design Practices / Characteristics
– Context . Meaning of information to the user, relationships among information: perspective, semantic context, subview mapping.
– Scaling . Size/dimensionality of graphical views as data sets become very large (e.g., as the number of processors or duration of execution becomes very large): multi-dim. and multivariate representation, macroscopic and microscopic views, macro/micro composition and reading, adaptive graphical display, display manipulation, composite view.Chapter 23 by Heath, Malony, and Rover in Stasko, Domingue, Brown, and Price, Software Visualization - Programming as a Multimedia Experience, MIT Press, 1998.
![Page 25: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/25.jpg)
25Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visual Displays
• Design Practices (continued)– Perception and Interaction . Interpretation of
displays by user and support by tool for exploring execution behavior through views and options : perception and cognition, observing patterns, user interaction.
– Comparison . Relationships between views or representations to gain insight into behavioral characteristics and their causes: multiple views, small multiples, cross-execution views.
![Page 26: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/26.jpg)
26Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visual Displays
• Design Practices (continued)– Extraction of Information . Selection and
presentation of useful information from large data sets: reduction and filtering, clustering, encoding and abstracting, separating information.
• PV, Seesoft, POLKA, Rivet examples
Visualizations and design practices can be classified.
![Page 27: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/27.jpg)
27Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Usability
• Is a visualization system or graphical display effective?
• Definition– ISO definition: the effectiveness, efficiency,
and satisfaction with which specified users can achieve specified goals in particular environments (ISO DIS 9241DIS 9241-11)
– Software usability: … using particular computing systems
![Page 28: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/28.jpg)
28Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Usability
• Developer push? usability engineering, user-centric design
• Parallel Tools Consortium: researchers + developers + users
• User pull? Task Force on Requirements quirements for HPC Software and Tools– Guidelines for including software and tools
in HPC procurements (www.nacse.org/projects/HPCreqts/)
– Performance tuning and debugging support
![Page 29: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/29.jpg)
29Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Reusability• Definition
– the extent to which a software component can be used (with or without adaptation) in multiple problem solutions
– Reuse:• synthesizing a solution to a problem based on predefined
solutions to subproblems
• implementing new software systems from pre-existing software, e.g., an archive of software artifacts
– Why? • Reduce code development effort (increase productivity)
• Improve quality of the software
![Page 30: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/30.jpg)
30Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Reusability• Issues
– Design for reuse is expensive.– Tools that originate in university research labs are less likely to
have reuse as a goal.• Object-oriented and component-based approaches, such as Java or
DCOM, may impact reusability favorably.
– Some tools, such as Pablo, have re-usable modules. • This type of reuse may conflict with usability for the typical user (i.e.,
a tool that is highly configurable may appear complex to a user).
• Other types of reuse, such as look/feel of a GUI, tend to affectusability positively.
– Development of tools using a design-for/with-reuse strategy is a long-term outlook.
• Interoperable tools
• Extensible environments
![Page 31: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/31.jpg)
31Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Outline
• What is performance visualization?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
![Page 32: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/32.jpg)
32Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
PGRT InfrastructureT InfrastructureInterpreted Prototypes
Wrappers
Libraries
System
Guile Libraries
Visual Object
HLLL
ISM
PGRT-TIE
![Page 33: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/33.jpg)
33Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
• Integrates software components using a language-based glue-and-library model
• Based on Guile software environment– Scheme-based system– Extensive library, interfaces and features
– Multilevel integration options
• Interfaces to instrumentation systems, visualization tools, XDR specificationsXDR specifications
TIE: Tool Integration Environment
![Page 34: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/34.jpg)
34Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visual Objects
![Page 35: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/35.jpg)
35Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Event Processing & Information Rendering Architecture for High-Level Visual Objects (HLVOs)
EPIRAA
![Page 36: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/36.jpg)
36Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visual Object Markup Language
VOML
• Prototyping of HLVOs• SGML Document Type
Definition• Higher level elements• Relations between elements
• Reusable software components
• Component semantics via embedded Scheme code
vomlheadbodyvisual-objectevent-declarationsdata-event
info-structurescontrol-structuresutility-codeview-initializationsview
event-processingep-componentpreprocess-inputs
info-renditionir-component
![Page 37: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/37.jpg)
37Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
PGRT Displays
![Page 38: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/38.jpg)
38Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Outline
• What is performance visualization?• Instrumentation systems• Visualization systems• PGRT infrastructure
– Visual objects & VOML
• Uniform resource visualization– Components
– Composition
![Page 39: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/39.jpg)
39Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Uniform Resource Visualizationrm Resource Visualization
• URV is a component-based strategy– Constructing performance visualizations
• Composing system-level views• Sharing visualization design knowledge• Describing visualizations and their interfaces
uniformly
– Monitoring and analyzing parallel & distributed systems
• Viewing different resources, levels in a coordinated framework
![Page 40: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/40.jpg)
40Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Construction
• Two independently executing components– Resource-monitoring component
• Physical entity, e.g., processor• Logical entity, e.g., array
– Visualization component– Connected by a collaboration
– Mapped onto EPIRA– Written within VOML
![Page 41: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/41.jpg)
41Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
System Visualization
• Scale• Hierarchy• Heterogeneity• Dynamics
Application
Devices
LEVEL
NODE
RESOURCE
![Page 42: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/42.jpg)
42Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Application
Devices
LEVEL
NODE
RESOURCE
URV
![Page 43: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/43.jpg)
43Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Application
Devices
LEVEL
NODE
RESOURCE
URV
![Page 44: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/44.jpg)
44Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Application
Devices
LEVEL
NODE
RESOURCE
URV
![Page 45: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/45.jpg)
45Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Application
Devices
LEVEL
NODE
RESOURCE
URV
![Page 46: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/46.jpg)
46Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Standards
• Resource Mon component– Monitoring and control
services for a resource
![Page 47: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/47.jpg)
47Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Standards
• Resource Mon component– Monitoring and control
services for a resource
• Visualization component– Implementation of VOML
high-level visual object
![Page 48: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/48.jpg)
48Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Standards
• Resource Mon component– Monitoring and control
services for a resource
• Visualization component– Implementation of VOML
high-level visual object
• Component interface– Set of services provided to
and required of other components
![Page 49: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/49.jpg)
49Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Plug-in Metaphorphor
• Collaboration– Description of connection
between services– More complex than
binding the names of services
• Buffer types• Synchronization between a
single resource and multiple visualizations
![Page 50: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/50.jpg)
50Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Plug-in Metaphor
• Standardization– Specialize a generic
visualization to an interface via a collaboration
• Services {v1, v2, …, vn} provide generic data flows
– Reuse visualization with any resource in family that shares same interface
• Resource interface defines services {r1, r2, …, rn}
![Page 51: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/51.jpg)
51Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
EPIRA Mapping
• Visualization components --> IR• Resource-mon components --> EP• Collaborations --> Info & Control Structures
IREP
Info & Control
![Page 52: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/52.jpg)
52Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Design Knowledgewledge
• Description of a component– Concept: what the component does
– Content: how the concept is implemented and can be specialized
– Context: the domain in which the component may be applied
• Searchable component specifications• Reusable design features, visualization
principles
![Page 53: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/53.jpg)
53Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Composition
• Composition creates system-level views representing multiple resources.– Two resources, Res1 and Res2
– Visualization issues• Synchronization• Abstraction
URVs
Resources
![Page 54: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/54.jpg)
54Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Composition• Synchronization
– Separate views may cause incorrect correlations
• Interprocess communication• Network traffic
– Composition: synchronize/join (spatially and temporally) into a single graph based on a common independent variable
![Page 55: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/55.jpg)
55Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Composition• Abstraction
– Separate views may hide multidimensional information and relationships
• Interprocess communication• Network traffic
– Composition: synthesize information• Process matrix of network traffic
![Page 56: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/56.jpg)
56Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Visualization Composition
• Two types– Union ⊕: set of concrete transformation
rules• Transformational approach: binary function
takes two URVs and constructs a third URV• Composition transform: matches multiple URV
view descriptions and replaces them with a synchronized, but functionally equivalent, view
– Synthesis ⊗: design activity supported by a framework
![Page 57: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/57.jpg)
57Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Union ⊕⊕⊕⊕– Aggregate of Res1 and Res2 unchanged
– Collaboration replaced via transformation– Visualization replaced via transformation
• Aggregate of separate visualization components Vis1 and Vis2
• Replaced by new visualization Vis3
![Page 58: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/58.jpg)
58Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Union ⊕⊕⊕⊕– Services {r1, r2, …, rn}
define the interface to the aggregate resource
– Aggregrate resource is coupled with a collaboration that names services {v1, v2, …, vn}
– Interface to new visualization component is plug-compatible with {v1, v2, …, vn}
![Page 59: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/59.jpg)
59Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Synthesis ⊗⊗⊗⊗
• Conscious activity by a human designer that cannot be automated fully
• Indexing of URVs and visualization components according to a classification scheme
• Designer specifies a set of search attributes to guide the search for a component
![Page 60: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/60.jpg)
60Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Synthesis ⊗⊗⊗⊗
![Page 61: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/61.jpg)
61Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Synthesis ⊗⊗⊗⊗
![Page 62: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/62.jpg)
62Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Instrumentation System Support
• Challenge: integration of performance data from unrelated resources– ISM: proxy for
resources– Resource monitors
register themselves with the ISM
![Page 63: Performance Visualizationpages.cs.wisc.edu/~bart/US-Ven/Talks/Rover.pdf · Visualization Systems • Taxonomy (continued) – Interface , or Interaction .How does the user of the](https://reader034.fdocuments.us/reader034/viewer/2022052100/603a21e5cdc6fc5f54417ef2/html5/thumbnails/63.jpg)
63Sys
tem Per
form
ance
D. Rover - MSU - 4/2000
Features of URVRV• Usability � Reusability �
• � Multi-level, composable, reusable, distributable components (URV software architecture)
• � � Uniform descriptions of views for hardware/software resources
• � � Framework for developers to supply and catalog URVs
• � � Rule-based visualization composition
• � Access to performance views
• � � Capture of visualization design practices