1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
|
--------------------------------------------------------------------
Announcement: New version of the VCG tool
--------------------------------------------------------------------
The VCG Tool
============
A Visualization Tool for compiler graphs
DESCRIPTION
The VCG tool reads a textual and readable specification of a
graph and visualizes the graph. If not all positions of
nodes are fixed, the tool layouts the graph using several
heuristics as reducing the number of crossings, minimizing
the size of edges, centering of nodes. The specification
language of the VCG tool is nearly compatible to GRL, the
language of the edge tool, but contains many extensions. The
VCG tool allows folding of dynamically or statically speci-
fied regions of the graph. It uses colors and runs on
Sunview or X11.
The VCG tool has been developed and tested on a Sparc ELC with
SunOs 4.1.3, Sunview and X11 Release 4, Release 5 and Release 6,
and different ANSI C and K&R C compilers. It has further been
tested on a Silicon Graphics (IRIX 4.0.5), on a IBM R6000 (AIX 2
with AIX Windows), on a HP-UX (cc and c89) and on Linux (X11R5,
gcc). Recently, a user reported a successful installation on
a DecStation (ULTRIX).
WHAT IS NEW
1) Several bugs are solved now. Thanks to all people who have
reported these.
2) A special layout algorithm for trees is implemented.
This allows to visualize trees much faster than before.
3) An additional optimization phase reduces the number of
edge crossings much more than before.
4) It is now possible to specify a raster where the centers
of the nodes are placed. This may yield in a more uniform
layout in some applications.
5) It is possible to specify a horizontal order of nodes
within a level of the layout. It is now even possible to
specify this order only partially: The nodes with order
numbers are sorted according to these, and the nodes without
order numbers are added to the resulting sequence of nodes
such that the number of edge crossings is small.
6) The usage of the tool has been improved: A region can be
selected by the rubberband during the operation `Pick Position'.
This region is scaled to fit into the window. Thus, it is now
much simpler to find the part of the graph to be inspected.
FEATURES
0) The VCG tool is not a graph editor. It is intended to
visualize large graphs that are automatically generated by
programs, e.g. debuggers of data structures.
1) Speed is always the first priority. Examples:
Type | Nr.of nodes | Nr.of edges | Time | Mode
-------------------------------------------------------------
tree | 4095 | 4094 | 15 sec. | normal
graph | 70 | 104 | 3 sec. | normal
graph | 75 | 3983 | 89 sec. | -f (fast mode)
The graph 3 with 75 specified nodes and 3983 edges consists of
21694 internal nodes and 23540 internal edge segments.
The tests were done using a xvcg (X11 version, compiled by
gcc version 2.4.5, gcc options -O -finline-functions).
They were done on a Sparc 10/30 (arch = sun4m) with 32 MB
main memory.
The times include time for loading, layouting and displaying.
2) The layout algorithm can be controlled in different ways.
There are 13 basic layout methods and two variants of crossing
reduction.
Further, the priorities of edges and the number of layout
iterations may be set to influence the layout.
3) Folding of subgraphs, of dynamically specified regions and
the hiding of classes of edges allow to select exactly the
part of the graph that is of interest.
4) Arbitrary zooming of graphs.
5) Color support.
6) Different shapes of nodes are available: boxes, triangles,
rhombs, ellipses.
7) Export into PBM-P4 files (black and white) or PNM-P6 files
(color). For these formats, there are a lot of converters
and printer drivers in the world. (For instance, the PBM+
package is available by anonymous ftp at ftp.cs.uni-sb.de
in the directory /pub/graphics).
Colored multiple page PostScript output up to 25 pages to
print very large graphs is possible, too.
8) Edges can be drawn as polygon segments, or as splines.
Splines are basically of interest for a quality PostScript output,
because the drawing of splines in a X11 window is rather slow.
9) Interface to program animations that provide the VCG tool
with a sequence of graph descriptions.
FURTHER REMARKS
In one of the previous distributions, I started to include a
version number starting at V.1.0. Before, I had included a
revision number, but this is not appropriate, because it is
simply the number of the version control file of main.c.
Okay: the first release was VCG, no version, revision 3.4
The newest release is VCG, version 1.1, revision 3.13
I hope nobody is confused by this.
LICENSE CONDITIONS
Copyright (C) 1993, 1994 by Iris Lemke, Georg Sander, and
the Compare Consortium
This work is supported by the ESPRIT project 5399 Compare.
We thank the Compare Consortium for the permission to distribute
this software and documentation freely. You can redistribute
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
The members of the Compare Consortium are ACE Associated Computer
Experts bv, GMD Forschungsstelle an der Universitaet Karlsruhe,
Harlequin Limited, INRIA, STERIA, Stichting Mathematisch Centrum (CWI),
and Universitaet des Saarlandes.
The Compare Consortium will neither assume responsibility for any
damages caused by the use of its products, nor accept warranty or
update claims. This product is distributed in the hope that it will
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
AVAILABILITY
The software is available by anonymous ftp at ftp.cs.uni-sb.de
(134.96.7.254) in the directory /pub/graphics/vcg. This site is
in Germany.
Contact sander@cs.uni-sb.de for additional information.
AUTHORS
Georg Sander, University of Saarland, 66041 Saarbruecken, Germany.
Iris Lemke, University of Saarland, 66041 Saarbruecken, Germany.
The VCG tool has been developed at the Institute for Compiler
Construction, Department of Computer Science, at the University
of Saarland, conducted by Prof. Dr. R. Wilhelm.
|