Tools

Tools

Contents

1  Barycentric Visualization
    1.1  Barry2D for CPUs and Multicores
    1.2  CPUplayer Tool
    1.3  Barry2D for Apdex
    1.4  Barry3D for Network Utilization
2  Pretty Damn Quick (PDQ)
3  Significant Digits
    3.1  Significant Figures Calculator
    3.2  Significance Rounding Calculator
4  PerfViz Group

1  Barycentric Visualization

Here are some prototype examples of visualizaton tools directed at performance analysis exploration rather than simple reporting. The detailed attributes are discussed below. Additional ackground concerning the general approach can be found in the CMG 2007 conference paper Seeing It All at Once with Barry (PDF).
(1) Barry2D CPU (2) CPUplayer Tool
(3) Barry2D Apdex (4) Barry3D Network

1.1  Barry2D for CPUs and Multicores

Barry2D in Fig. 1 above displays CPU utilization for a 72-way multiprocessor running a network-based workload on ORACLE 10g. The barry-3 axes are:
  • USR: %user time (vertical upward increasing, red)

  • SYS: %system time (left-right downward increasing, yellow)

  • IDL: %idle (right-left downward increasing, blue)

At 12:36:46, the workload begins to ramp up starting at the lower left corner of the triangle; maximum idleness. Most of the CPUs (shown as colored dots) gradually make their way up the blue idle axis (decreasing idleness) to cluster around the region bounded by the 25% idle line, the 25% sys line and the 50% usr line. However, 3 CPUs peel off at around 10% usr time and rapidly migrate (rightward) to the 80-90% sys location; near the tip of the yellow arrow.
These CPUs are dedicated to handling network traffic and other house-keeping. At 12:53:41, the workload completes and all the CPU dots rapidly return to the tip of the blue arrow as they become idle again. Some clean up continues as some of the CPUs are seen to run back and forth along the base of the Barry3 triangle (zero usr time) between idle and system time. The frame rate of 1 second corresponds to 10 seconds of real time, as shown in the clock display. (Data supplied with permission by Time Cook of Sun Microsystems.)

1.2  CPUplayer Tool

A limitation of the above Mathematica prototypes is that you need to use Mathematica.
CPUplayer in Fig. 2 above is a stand-alone version of Barry2D, written by Stefan Parvu, that provides animation for visually exploring performance issues based on multiprocessor utilization data. Moreover, since it is open-source, all the code for contructing CPUplayer is available on GitHub.
CPUplayer offers:
  • Stand-alone video playback of historical multiprocessor utilization data

  • Data format can be as simple as CSV

  • Toggled display of date and time information

  • Toggled display of multicore IDs

  • Toggled display of USR, SYS and IDL axes

  • Full color performance zones

CPUplayer has been used in a case study diplaying the performance advantages of enabling processor sets in Solaris 10 for a Sybase OLTP workload running on a Sun Entreprise T5220 with up to 32 virtual processors. (cf. Mathematica animation in Fig. 1 above for Oracle OLTP workload on a Sun E10K server)

1.3  Barry2D for Apdex

The Apdex Alliance is a group of companies collaborating to promote an application performance metric called Apdex. Apdex is a numerical measure of user satisfaction with the performance of enterprise applications, and reflects the effectiveness of IT investments in contributing to business objectives.
The visualization in Fig. 3 above shows both the Apdex index and its component categories can be displayed for multiple geographical locations simultaneously.
The location of each dot is determined by its percentage of satisfied (s), tolerating (t) and frustrated (f) counts. In this case, the unnormalized categorical data is binned according to:
  • S: Samples < 4 seconds

  • T: 4 seconds < Samples < 16 seconds

  • F: Samples > 16 seconds

The Apdex response time measurements were collected from 5 different geographic locations (shown in the legend) over a period of 30 days. Data supplied with permission by Peter Sevcik of the Apdex Alliance. The gray background is superimposed to better display the colored dots.
This visualization concept was presented (PDF) at the 2007 Apdex Symposium.

1.4  Barry3D for Network Utilization

Fig. 4 above is a representation of the 3-simplex depecting 4 network performance metrics in three dimensions for 1,000 network segments depicted as a cloud of points.
It is very clear, even without looking closely at the visual area, that the points cluster into 3 sub-clouds along certain viewing angles. This is the barycentric analog of the MacSpin example.

2  Pretty Damn Quick (PDQ)

Queueing-based performance analyzer.

3  Significant Digits

One way to maintain all input digits explicitly is to represent them as a string of characters. This can be accomplished by either reading the number in from the keyboard or by passing it as a string-valued parameter in quotes. Otherwise, an input number like 0.040300 (which has 5 sig digits) would be represented as 0.0403 in numerical form (trainling zeros are truncated) and that would lead to the incorrect conclusion that the number only had 3 sig digits on input.
For more background information see Chap. 3 of Guerrilla Capacity Planning and Significant Figures in R and Info Zeros.

3.1  Significant Figures Calculator

Compute the significant digits in a number.

3.2  Significance Rounding Calculator

The input number is correctly rounded to the required reporting significance using the new rounding rule that avoids parity bias.
See also Significant Figures in R and Rounding.

4  PerfViz Group

Join the ongoing discussions at the PerfViz Google group.

Copyright © 2002-2011 Performance Dynamics. All Rights Reserved.



File translated from TEX by TTH, version 3.38.
On 27 Mar 2014, 17:59.