1 |
# This is dot2term, a program that converts graphs expressed in 'dot' |
2 |
# format, into the 'term representation' that can be handled by |
3 |
# uDrawGraph. |
4 |
# |
5 |
# WHY |
6 |
# |
7 |
# The quattor tool 'panc-call-tree.pl' can output the include tree of a |
8 |
# quattor machine profile; the supported formats are 'dot' and |
9 |
# 'hypergraph'. 'dot' can be read by Graphviz [1] and 'hypergraph' can |
10 |
# be read by Hypergraph [2]. Neither of these tools allow for easy |
11 |
# navigation of the graphs, nor (especially important to me) hiding |
12 |
# various pieces of the subgraph, in order to be able to view the |
13 |
# interesting part at a reasonable scale. The uDrawGraph [3] program |
14 |
# does allow such manipulations of the displayed graphs. |
15 |
# |
16 |
# WHAT |
17 |
# |
18 |
# * run the pan compiler on your favorite template with logging mode on. At Nikhef |
19 |
# the relevant command is |
20 |
# makexprof -l call -f <cluster> <hostname> |
21 |
# |
22 |
# * run panc-call-tree.pl; at Nikhef the relevant command is |
23 |
# panc-call-tree.pl $L/build/log/panc.log |
24 |
# This will yield a file <hostname>.dot in the current working directory |
25 |
# |
26 |
# * run dot2term |
27 |
# dot2term <hostname>.dot |
28 |
# This will yield a filename <hostname>.udg if the input file ended in '.dot'; |
29 |
# otherwise the output file will be called <inputfilename>.udg |
30 |
# |
31 |
# LIMITATIONS |
32 |
# |
33 |
# The 'dot' language includes many features; I only dealt with converting those encountered |
34 |
# in the output of panc-call-tree.pl. There are probably many dot files which cannot be |
35 |
# converted with this tool. |
36 |
# |
37 |
# [1] http://www.graphviz.org/ |
38 |
# [2] http://hypergraph.sourceforge.net/ |
39 |
# [3] http://www.informatik.uni-bremen.de/uDrawGraph/en/uDrawGraph/uDrawGraph.html |