packages icon



 ParaGraph(L)                                                   ParaGraph(L)
                                 8 June 1994



 NAME
      ParaGraph - performance visualization of parallel programs

 SYNOPSIS
      PG [-c | -g | -m] [-d hostname:0.0] [-e envfile] [-f tracefile] [-l
      layoutfile] [-n windowname] [-o orderfile] [-r rgbfile]

 DESCRIPTION
      ParaGraph is a graphical display system for visualizing the behavior
      and performance of parallel programs on message-passing parallel
      computers.  It takes as input execution trace data provided by PICL
      (Portable Instrumented Communication Library), developed at Oak Ridge
      National Laboratory and available from netlib.  PICL optionally
      produces an execution trace during an actual run of a parallel program
      on a message-passing machine, and the resulting trace data can then be
      replayed pictorially with ParaGraph to display a dynamic, graphical
      depiction of the behavior of the parallel program.  ParaGraph provides
      several distinct visual perspectives from which to view processor
      utilization, communication traffic, and other performance data in an
      attempt to gain insights that might be missed by any single view.

      ParaGraph is based on the X Window System and runs on a wide variety
      of graphical workstations.  It uses no X toolkit and requires only
      Xlib.  Although ParaGraph is most effective in color, it also works on
      monochrome and grayscale monitors.  It has a graphical, menu-oriented
      user interface that accepts user input via mouse clicks and
      keystrokes.  The execution of ParaGraph is event driven, including
      both user-generated X Window events and trace events in the input data
      file provided by PICL.  Thus, ParaGraph displays a dynamic depiction
      of the parallel program while also providing responsive interaction
      with the user.  Menu selections determine the execution behavior of
      ParaGraph both statically (e.g., initial selection of parameter
      values) and dynamically (e.g., pause/resume, single-step mode).
      ParaGraph preprocesses the input tracefile to determine relevant
      parameters (e.g., time scale, number of processors) automatically
      before the graphical simulation begins, but these values can be
      overridden by the user, if desired.

      ParaGraph currently provides about 25 different displays or views, all
      based on the same underlying trace data, but each giving a distinct
      perspective.  Some of these displays change dynamically in place, with
      execution time in the original run represented by simulation time in
      the replay.  Other displays represent execution time in the original
      run by one space dimension on the screen.  The latter displays scroll
      as necessary (by a user-controllable amount) as visual simulation time
      progresses.  The user can view as many of the displays simultaneously
      as will fit on the screen, and all visible windows are updated
      appropriately as the tracefile is read.  The displays can be resized
      within reasonable bounds.  Most of the displays depict up to 512
      processors in the current implementation, although a few are limited
      to 128 processors and one is limited to 16.



                                    - 1 -      Formatted:  December 27, 2024






 ParaGraph(L)                                                   ParaGraph(L)
                                 8 June 1994



      ParaGraph is extensible so that users can add new displays of their
      own design that can be viewed along with those views already provided.
      This capability is intended primarily to support application-specific
      displays that augment the insight that can be gained from the generic
      views provided by ParaGraph.  Sample application-specific displays are
      supplied with the source code.  If no user-supplied display is
      desired, then dummy "stub" routines are linked with ParaGraph instead.

      The ParaGraph source code comes with several sample tracefiles for use
      in demonstrating the package and verifying its correct installation.
      To create your own tracefiles for viewing with ParaGraph, you will
      need PICL, which is also available from netlib.  The tracing option of
      PICL produces a tracefile with records in node order.  For graphical
      animation with ParaGraph, the tracefile needs to be sorted into time
      order, which can be accomplished with the Unix sort command:

      % sort +1n -2 +2n -3 +0n -1 tracefile.raw > tracefile.trf

      When using PICL to produce tracefiles for viewing with ParaGraph, set
      tracelevel(1,1,0) to produce the trace events required by ParaGraph.
      You may also want to define tasks using the traceblockbegin and
      traceblockend commands of PICL to delimit sections of code and assign
      them task numbers to be depicted by ParaGraph in some of its displays
      as an aid in correlating the visual simulation with your parallel
      program.  ParaGraph does not depict a "host" processor graphically and
      ignores all trace events involving the host, so tracing on the host is
      not encouraged when the tracefile is to be viewed using ParaGraph.

 OPTIONS
      The following command-line options are supported by ParaGraph.
      -c   to force color display mode.
      -d   to specify a hostname and screen (e.g., hostname:0.0)
           for remote display across a network.
      -e   to specify an environment file (default: .pgrc).
      -f   (or no switch) to specify a tracefile directory path or filename.
      -g   to force grayscale display mode.
      -l   to specify an animation layout file (default: .pganim).
      -m   to force monochrome display mode.
      -n   to specify a name for the base window (default: ParaGraph).
      -o   to specify an order file (default: .pgorder).
      -r   to specify a file containing RGB values of task colors
           (default: .pgcolors).

      By default, ParaGraph automatically detects the appropriate display
      mode (color, grayscale, or monochrome), but a particular display mode
      can be forced, if desired, by the corresponding command-line option.
      This facility is useful, for example, in making black-and-white
      hardcopies from a color monitor.

 FILES
      The following environment files can optionally be supplied by the user



                                    - 2 -      Formatted:  December 27, 2024






 ParaGraph(L)                                                   ParaGraph(L)
                                 8 June 1994



      to customize ParaGraph's appearance and behavior.  The default
      filenames given below can be changed by the appropriate command-line
      options.
       .pgrc         defines the initial state of ParaGraph upon
                     invocation, including which menus and
                     displays are open and various options.
       .pgorder      defines an optional order or alternative
                     names for the processors.
       .pgcolors     defines the color scheme to be used for
                     identifying tasks.
       .pganim       defines an animation layout file.

      The following files are provided in the ParaGraph distribution from
      netlib.
       *.c           several C source files.
       *.h           several include files.
       Makefile.*    sample makefiles for several machine
                     configurations, which should be modified to
                     incorporate the local location for Xlib, etc.
       manual.tex    a user guide in Latex format.
       pg.man        a Unix man page.
       tracefiles    a directory containing several sample
                     tracefiles.
       u_*           several directories containing example
                     application-specific displays.

 SEE ALSO
      A machine-readable manual for ParaGraph, in Latex format, is provided
      along with the source code from netlib.  Additional information is
      contained in the article "Visualizing Performance of Parallel
      Programs" in the September 1991 issue of IEEE Software, pages 29-39,
      and in the technical report ORNL/TM-11813.  Documentation for PICL is
      available from netlib and in the technical reports ORNL/TM-11130,
      ORNL/TM-11616, and ORNL/TM-12125.

 BUGS
      Some of the displays are not repaired when re-exposed after having
      been partially obscured.  Changing parameters dynamically while the
      visual animation is active may give erratic results.  The apparent
      speed of visual animation is determined primarily by the drawing speed
      of the workstation and is not necessarily uniformly proportional to
      the original execution speed of the parallel program.

 AUTHORS
      Michael T. Heath and Jennifer E. Finger









                                    - 3 -      Formatted:  December 27, 2024