Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Presentation Methodology Summary B. Golden. 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy.

Similar presentations


Presentation on theme: "1 Presentation Methodology Summary B. Golden. 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy."— Presentation transcript:

1 1 Presentation Methodology Summary B. Golden

2 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy of performance data  Help bridge the gap between raw performance data and performance improvements When to use visualizations?  On-line: visualization while the application is running (can slow down execution significantly)  Post mortem: after execution (usually based on trace data gathered at runtime) What to visualize?  Interactive displays to guide the user, not rationalize  Default visualizations should provide high-level views  Low-level information should be easily accessible

3 3 Visualization Concepts and Principles Context  Perspective: the point of view from which information is presented  Semantic Context: the relationship between performance information and user data constructs  Sub-view Mapping: a mapping between a subset of graphical views Scaling  Multidimensional/Multivariate representation: a representation of data with many attributes per data point  Macroscopic/Microscopic views: the level of detail represented by a given view  Micro/Macro composition: showing both local detail and global structure  Adaptive display: the adjustment of a display’s characteristics in response to data size  Display manipulation: interactive modification of a display (i.e. zooming, scrolling)  Composite view: synthesis of two or more views into a single view Comparison  Multiple views: the presentation of data from multiple perspectives  Small multiples: a series of images indexed by changes in other performance data (e.g. animation)  Cross-execution views: comparison of performance information from various program executions Extraction of information  Reduction and filtering: representing raw data by statistical summaries  Clustering: multivariate statistical analysis and presentation techniques for grouping or categorizing related data points  Encoding and abstracting: using graphical attributes (color, shape, size, etc) to convey information  Separating information: differentiation among layers of information through color highlighting foreground/background, etc.

4 4 General Approaches to Performance Visualization General Categories  Program specific: application specific way to show how computation progresses by animating data structures  System oriented: focus on the impact the application has on the system  System/Application independent: depict performance data for a variety of systems and applications. See figure  Meta-tools: facilitate the development of custom visualization tools Other Categories  On-line: visualization during execution Can be intrusive Volume of information may be too large to interpret with out playback functionality Allows the user to observe only the interesting parts of execution  Post mortem: visualization after execution Large trace files Easier to implement Users are accustomed to this format

5 5 Specific Features of Existing Visualization Strategies Animation  Has been employed by various tools to assist in the program execution replay  Communication operations are the most commonly animated events  Viewing data dynamically may illuminate bottlenecks more efficiently Program graphs  A generalized picture of the whole system  Paradyn has this functionality Gantt charts  De facto standard for displaying inter-process communication Data access displays  Each cell of the 2D display is devoted to an element of the array  Color distinguishes between local/remote and read/write Critical path analysis  Concerned with identifying the program regions which most contribute to program execution time  Construct a graph which depicts synchronization and communication dependencies among the processes in the program

6 6 Evaluation of User Interfaces General Guidelines  Visualization should guide, not rationalize  Scalability is crucial  Color should inform, not entertain  Visualization should be interactive  Visualizations should provide meaningful labels  Default visualization should provide useful information  Avoid showing too much detail  Visualization controls should be simple GOMS  Goals, Operators, Methods, and Selection Rules  Formal user interface evaluation technique  A way to characterize a set of design decisions from the point of view of the user  A description of what the user must learn; may be the basis for reference documentation  The knowledge is described in a form that can actually be executed (there have been several fairly successful attempts to implement GOMS analysis in software, ie GLEAN)  There are various incarnations of GOMS with different assumptions useful for more specific analyses (KVL, CMN-GOMS, NGOMSL, CPM-GOMS, etc.)

7 7 Simple GOMS Example GOMS model for OS X  Method for goal: delete a file. Step 1. Accomplish goal: drag file to trash. Step 2. Return with goal accomplished.  Method for goal: move a file. Step 1. Accomplish goal: drag file to destination. Step 2. Return with goal accomplished. GOMS model for UNIX  Method for goal: delete a file. Step 1. Recall that command verb is "rm -f". Step 2. Think of directory name and file name and retain as first filespec. Step 3. Accomplish goal: enter and execute a command. Step 4. Return with goal accomplished.  Method for goal: copy a file. Step 1. Recall that command verb is "cp". Step 2. Think of source directory name and file name and retain as first filespec. Step 3. Think of destination directory name and retain as second filespec. Step 4. Accomplish goal: enter and execute a command. Step 5. Return with goal accomplished.

8 8 Conclusion Plan for development  Develop a preliminary interface that provides the functionality required by the user while conforming to visualization guidelines presented previously  After the preliminary design is complete, elicit user feedback  During periods where user contact is unavailable, we may be able to use GOMS analysis or another formal interface evaluation technique


Download ppt "1 Presentation Methodology Summary B. Golden. 2 Introduction Why use visualizations?  To facilitate user comprehension  To convey complexity and intricacy."

Similar presentations


Ads by Google