Related articles |
---|
ANNOUNCEMENT: VCG Graph Layout Tool V.1.30 sander@cs.uni-sb.de (1995-02-17) |
Newsgroups: | comp.compilers |
From: | sander@cs.uni-sb.de (Georg Sander) |
Keywords: | tools, available, FTP |
Organization: | Compilers Central |
Date: | Fri, 17 Feb 1995 13:41:48 GMT |
--------------------------------------------------------------------
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
X11. (An older version runs on Sunview).
The VCG tool has been developed and tested on a Sparc ELC with
SunOs 4.1.3, X11 Release 5 and Release 6, and different ANSI C
and K&R C compilers. It has further been tested on Solaris
(SunOs 5.3, gcc only), on a Silicon Graphics (IRIX 5.2),
on a IBM R6000 (AIX 2 with AIX Windows), on a HP-UX (X11R5, c89),
on a DecStation (ULTRIX, X11R5, gcc only), on Linux (X11R5, gcc),
and on OSF (X11R5, gcc). Recently, a user ported the tool to
VAX/VMS.
WHAT IS NEW
1) Several bugs are solved now. Thanks to all people who have
reported these.
2) The most interactive commands are now much faster.
3) Up to 254 colors out of 16777216 possibilities can be used,
i.e. a color table is used now.
4) Orthogonal layout is implemented: here all edges consist
of horizontal and vertical edge segments (manhattan layout).
In particular, flowcharts look much better in this style.
5) Fisheye views: If the graph is very large, we normally had
only the possibility to see a detail but not the whole graph,
or to see the whole graph, but scaled so much that nothing is
recognizable. Now, we use fisheyes and see the focus point en
detail and the overview over the graph at the same time.
6) The printer driver interface allows to produce a output file
of the visualized graph without the need of interaction.
The VCG tool acts as a kind of converter program in this
case: it converts a VCG file into a PostScript or bitmap
file. The interactive display is suppressed in this case.
This is useful if a large number of VCG specifications must be
converted into PostScript or bitmap file by a batch job.
7) It is possible to explore the network of edges by the `follow
edge' command. This command is now more comfortable: a history
mechanism is implemented.
8) New types of edges: backedges and bentnearedges are very useful
for flowcharts and control flow graphs.
There are some new attribute for the edges: the color of the
label and the arrowheads, the style of the arrowheads etc.
9) Time limits can be specified for the layout. If the time limit
is exceeded, the tool switches into the fastest and ugliest
layout mode.
10) etc.
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 | 2 sec. | normal
graph | 66 | 95 | 3 sec. | normal
graph | 132 | 288 | 5 sec. | normal
graph | 20 | 190 | 14 sec. | normal
graph | 26 | 325 | 22 sec. | normal
graph | 75 | 3983 | 89 sec. | -f (fast mode)
The graph 5 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.6.3, 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, including a specialized
version for trees, and 4 variants of crossing reduction,
and various optional optimization methods.
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) It is possible to specify a raster where the centers
of the nodes are placed. This may yield in a more uniform
layout in some applications.
8) 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.
9) 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.
10) Interface to program animations that provide the VCG tool
with a sequence of graph descriptions.
LICENSE CONDITIONS
Copyright (C) 1993--1995 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.
--
-------------------------------------------------------------------
| Georg Sander - FB 14 Informatik - Universitaet des Saarlandes |
| sander@cs.uni-sb.de 66041 Saarbruecken, Germany |
| --------------><--------------- Phone: +49-681-302-3054 |
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.