(3M) Calculator User Manual

peritab
cblknbr
rangtab
treetab
permtab
13
10 11 12
1011 12
10
−1
1 2 4 85 6
7
2 3 4 8 7 16
1 2 45
3 3 7 6 76
5 9
1
2 3
9
8 7
6
5
4
1
5
2
6
9
4
8
3
7
3 6789
1
2
3
4
5
6
7
10
11
12
10 11 12
Figure 21: Arrays resulting from the ordering by complete nested dissection of a 4
by 3 grid based from 1. Leftmost grid is the original grid, and righmost grid is the
reordere d grid, with se parators shown and column block indices written in bold.
partitioning or ordering methods should b e applied to graphs and subgraphs, or to
meshes and submeshes.
7.3.1 Using default strategy string s
While strategy strings can be built by hand, according to the syntax given in the
next sections, users who do not have s pecific needs can take advantage of default
strategies already implemented in the libScotch, which will yield very good results
in most cases. By doing so, they will spare themselves the hassle of updating their
strategies to comply to subsequent syntactic changes, and they will benefit from
the availability of new partitioning or ordering methods as soon as they are made
available.
The s implest way to use default strategy strings is to avoid specifying any. By
initializing a strategy object, by means of the SCOTCH
stratInit routine, and by
using the initialized strategy object as is, without further parametrization, this
object will be filled with a default strategy when pas sing it as a parameter to the
next partitioning or ordering routine to be called. On return, the strategy object
will contain a fully spec ified strategy, tailored for the type of o peration which has
been requested. Consequently, a fresh strategy object that was used to partition a
graph cannot be used afterward as a default strategy for calling an ordering routine,
for instance, as partitioning and order ing strategies are incompatible.
The libScotch also provides helper routines which allow users to express their
preferences on the kind of strategy that they need. These helper routines, which
are of the form SCOTCH strat*Build, tune default strategy strings according to
parameters provided by the user, such as the requested number of pa rts (used
as a hint to select the most efficient partitioning routines), the desired maximum
load imbalance ratio, and a set of preference flags. While some of these flags are
antagonistic, most of them can be combined, by means of addition or “binary or”
operators . These flags are the following.
SCOTCH
STRATQUALITY
Privilege quality over speed. This is the default b e havior of default strategy
strings when they are used just after being initialized.
SCOTCH
STRATSPEED
Privilege speed over quality.
SCOTCH
STRATBALANCE
Enforce load balance as much as p ossible.
SCOTCH
STRATSAFETY
Do no t use methods that can lead to the occurrence of pro blema tic events,
57