(3M) Calculator User Manual

To speed up tar get architecture loading in the future, the decomposition-
defined target architecture is compiled by means of acpl.
Build an architecture graph which is the subgraph of the 8-node de Bruijn
graph restricted to vertices labeled 1, 2, 4, 5, 6, map graph graph.grf onto
it, and save the result to file /tmp/brol.map.
% (gmk
ub2 3; echo 5 1 2 4 5 6) | amk grf -L | gmap graph.grf -
/tmp/brol.map
Note how the two input streams of program amk
grf (that is, the de Bruijn
source graph and the five-elements vertex label list) are concatenated into a
single stream to be read from the standard input.
Compile and link the user application brol.c with the libScotch librar y,
using the default error handler.
% cc brol.c -o brol -lscotch -lscotcherr -lm
Note that the mathematical library s hould also be included, after all of the
Scotch libraries.
Recompile a program that used MeTiS so that it uses Scotch instead.
% cc brol.c -o brol -I${metisdir} -lscotchmetis -lscotch
-lscotcherr -lmetis -lm
Note that the -lscotchmetis option must be placed before the -lmetis
one, so that routines that are redefined by Scotch are selected instead of
their MeTiS counterpart. When no other MeTiS routines than the ones re-
defined by Scotch are used, the -lmetis option can be omitted. The
-I${metisdir} option may be necessary to provide the path to the orig-
inal metis.h include file, which c ontains the prototypes of all of the MeTiS
routines.
10 Adding n ew features to Scotch
Since Scotch is free/libre software, users have the ability to add new features to it.
Moreover, as Scotch is intended to be a testbed for new partitioning and ordering
algorithms, it has been developed in a very modular way, to ease the development
and inclusion of new partitioning and ordering methods to be called within Scotch
strategies.
All of the source code for partitioning and ordering methods for graphs and
meshes is located in the src/libscotch/ source subdire c tory. Source file names
have a very regular pattern, based on the internal data structures they handle.
10.1 Graphs and meshes
The basic structures in Scotch are the Graph and Mesh structures, which model
a simple symmetric graph the definition of which is given in file graph.h, and a
129