Features in 6/8/94 version of ParaGraph added since last major netlib
revision of 12/4/92:

 0. Changed to "new" PICL tracefile format documented in ORNL/TM-12125.
    A tracefile format converter is provided to maintain backward
    compatibility with earlier versions of PICL.

 1. Replaced "scale width" parameter, which some users found confusing, by
    "magnification" parameter, which should be more intuitively appealing,
    and is also independent of window resizing.

 2. Enhanced support for monochrome mode in Task displays.  These displays
    now provide eight distinct stipple patterns in monochrome, which is
    especially helpful for publishing black and white hardcopies with
    large numbers of tasks.

 3. Additional choices for distance function implemented, including 1-D
    and 2-D mesh and torus, binary tree, quadtree, and unit distance.
    Previously, only Hamming distance was supported.  Distance traveled,
    i.e., the number of hops in the network between source and destination,
    is one of the criteria for color-coding messages in some displays, and
    is also tallied in statistical summaries of communication traffic.

 4. Reset button added to control section of main menu.  This button
    clears all displays and returns to beginning of current tracefile,
    without restarting the animation.

 5. User-defined layout option added to Animation display.  This feature
    allows the use of the mouse to design an arbitrary arrangement of the
    nodes in the Animation display.  The layout can be saved in a file for
    future reuse.

 6. New Streak display added.  This display graphically depicts the
    current "winning" or "losing" streak by each processor, where
    winning means busy and losing means idle.

 7. Kiviat Diagram improved.  The Kiviat diagram has been modified
    so that the user can select whether the utilization plotted is to
    include only busy time or both busy and overhead.  The Kiviat
    diagram is also updated more frequently now, giving it a somewhat
    smoother appearance.

 8. Statistical Summary improved.  Several new items have been added
    to the non-graphical Statistical Summary display.  These include
    maxima, minima, and averages for transit times, distance traveled,
    and overhead incurred for messages on a per node and aggregate basis.
    In addition, a scroll bar has been added to permit browsing of the
    entire array of statistics for larger numbers of processors.

 9. Trace file directory browser added.  A new window has been added
    that displays the names of trace files available in a directory whose
    path name is supplied by the user.  Trace files are selected for
    processing by clicking on the corresponding file name in the window.

10. Bidirectional selection buttons.  Selection buttons now cycle forward
    or backward through the sequence of choices, depending on which mouse
    button is pressed.

11. Optional renaming of base window.  A command-line flag has been added
    for specifying a name for the main menu window.  This is useful for
    distinguishing multiple instances of ParaGraph when running them
    simultaneously.

12. Several more bugs have been fixed, including some that appeared only
    on workstations that we do not normally use.  The thoroughness of
    our testing on various workstations is in approximately the following
    order: Sun, IBM, SGI, HP, DEC.  This primarily reflects our ease of
    access to the respective machines.


New features in 12/4/92 version of ParaGraph added since previous
netlib version of 8/26/91:

 1. New Network display added.  A new Network display has been added
    that depicts interprocessor communication in terms of various
    interconnection network topologies, including butterfly, hypercube,
    omega, baseline, binary tree, quadtree, mesh, and crossbar networks.
    Message routing through intermediate processors is explicitly depicted,
    and the physical network links are color coded by the amount of traffic
    they carry, so that "hot spots" are clearly visible.

 2. Mesh layout for Animation.  The Animation display now has a 2-D
    array layout for the nodes in addition to the original circular
    layout.  This should be helpful for viewing grid based computations
    and for machines having a mesh network topology.

 3. More layouts for Hypercube display.  Several new node configurations
    have been added to the Hypercube display, bringing the total to more
    than 20.

 4. Global communication.  Global sends (e.g., sends with destination -1
    on some machines) are now supported, both logically and pictorially.

 5. Slow motion control.  A "slider" has been added to control animation
    speed.  ParaGraph cannot be speeded up (since by default it already
    draws as fast as the workstation permits), so this control in effect
    provides "slow motion" replay, if desired.  The slider control can be
    changed dynamically to change speeds during the run.

 6. Arbitrary number of nodes.  ParaGraph now depicts the actual number
    of nodes used, rather than rounding up to the next higher power of
    two.  All but one of the displays support at least 128 nodes, and
    many support up to 512 nodes.

 7. Environment files.  A user can now save a record of a preferred
    setup for ParaGraph (which displays are open, various parameter
    settings, etc.) so that it can be reestablished automatically on
    subsequent uses of ParaGraph.

 8. User customization.  The colors used to indicate tasks, as well as
    the ordering of the processors, are now user specifiable by means of
    files containing tables of relevant information.  The nodes can even
    be given user-specified names instead of numbers, if desired.  Single
    step mode has been generalized to allow a user-selected step increment.

 9. User-defined displays.  Support for user-defined displays has been
    substantially improved.  ParaGraph now supports multiple user-defined
    displays, which, if present, now have their own separate menu.
    Moreover, the user-defined displays are now much more flexible in how
    they can be used (e.g., they can accept user input via mouse clicks,
    keyboard, etc.)

10. Trace display improved.  The Trace display now shows the current
    trace record whenever it is opened, rather than having to start from
    the beginning of the tracefile in order to catch a given trace record
    for debugging or to pinpoint some specific event.

11. Color coding expanded.  In displays where messages are color coded
    (e.g., Comm Matrix, Spacetime), the messages can now optionally be
    color coded by type or by distance as well as by length.

12. Coordinate information display.  Many of the displays now provide
    additional information (such as user coordinates) in response to mouse
    clicks.  This information is printed in a separate window provided for
    this purpose.

13. Data output option.  Data from the displays can now be recorded
    numerically in output files.  This is useful for subsequent analysis
    or for transferring data to other graphics packages.

14. Keyboard input.  Keyboard input is now handled more robustly, and
    in particular it is echoed in reverse video to highlight changes and
    to indicate when they take effect (by reverting to normal video).

15. Interactive responsiveness.  The interactive responsiveness of
    ParaGraph has been significantly improved.  It is much easier now
    to get its attention when it is grinding away on a long tracefile.

16. Robustness.  ParaGraph now does more checking to detect errors in
    the tracefile and copes with many errors more gracefully.  It prints
    more meaningful error messages and optionally pauses when an error is
    detected in the tracefile.  ParaGraph is still far from bulletproof,
    but it's robustness has been significantly improved.

17. Bug fixes.  Numerous bugs in the last official netlib release, most
    of which were fairly obscure, have been fixed.