blob: 22095405217a5181549619f490b09e4d4c6c81dc (
plain)
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
|
/*
* Copyright 1997, Regents of the University of Minnesota
*
* defs.h
*
* This file contains constant definitions
*
* Started 8/27/94
* George
*
* $Id: defs.h,v 1.1 1998/11/27 17:59:13 karypis Exp $
*
*/
#define METISTITLE " METIS 4.0.3 Copyright 1998, Regents of the University of Minnesota\n\n"
#define MAXLINE 1280000
#define LTERM (void **) 0 /* List terminator for GKfree() */
#define MAXNCON 16 /* The maximum number of constrains */
#define MAXNOBJ 16 /* The maximum number of objectives */
#define PLUS_GAINSPAN 500 /* Parameters for FM buckets */
#define NEG_GAINSPAN 500
#define HTLENGTH ((1<<11)-1)
/* Meaning of various options[] parameters */
#define OPTION_PTYPE 0
#define OPTION_CTYPE 1
#define OPTION_ITYPE 2
#define OPTION_RTYPE 3
#define OPTION_DBGLVL 4
#define OPTION_OFLAGS 5
#define OPTION_PFACTOR 6
#define OPTION_NSEPS 7
#define OFLAG_COMPRESS 1 /* Try to compress the graph */
#define OFLAG_CCMP 2 /* Find and order connected components */
/* Default options for PMETIS */
#define PMETIS_CTYPE MATCH_SHEM
#define PMETIS_ITYPE IPART_GGPKL
#define PMETIS_RTYPE RTYPE_FM
#define PMETIS_DBGLVL 0
/* Default options for KMETIS */
#define KMETIS_CTYPE MATCH_SHEM
#define KMETIS_ITYPE IPART_PMETIS
#define KMETIS_RTYPE RTYPE_KWAYRANDOM_MCONN
#define KMETIS_DBGLVL 0
/* Default options for OEMETIS */
#define OEMETIS_CTYPE MATCH_SHEM
#define OEMETIS_ITYPE IPART_GGPKL
#define OEMETIS_RTYPE RTYPE_FM
#define OEMETIS_DBGLVL 0
/* Default options for ONMETIS */
#define ONMETIS_CTYPE MATCH_SHEM
#define ONMETIS_ITYPE IPART_GGPKL
#define ONMETIS_RTYPE RTYPE_SEP1SIDED
#define ONMETIS_DBGLVL 0
#define ONMETIS_OFLAGS OFLAG_COMPRESS
#define ONMETIS_PFACTOR -1
#define ONMETIS_NSEPS 1
/* Default options for McPMETIS */
#define McPMETIS_CTYPE MATCH_SHEBM_ONENORM
#define McPMETIS_ITYPE IPART_RANDOM
#define McPMETIS_RTYPE RTYPE_FM
#define McPMETIS_DBGLVL 0
/* Default options for McKMETIS */
#define McKMETIS_CTYPE MATCH_SHEBM_ONENORM
#define McKMETIS_ITYPE IPART_McHPMETIS
#define McKMETIS_RTYPE RTYPE_KWAYRANDOM
#define McKMETIS_DBGLVL 0
/* Default options for KVMETIS */
#define KVMETIS_CTYPE MATCH_SHEM
#define KVMETIS_ITYPE IPART_PMETIS
#define KVMETIS_RTYPE RTYPE_KWAYRANDOM
#define KVMETIS_DBGLVL 0
/* Operations supported by stand-alone code */
#define OP_PMETIS 1
#define OP_KMETIS 2
#define OP_OEMETIS 3
#define OP_ONMETIS 4
#define OP_ONWMETIS 5
#define OP_KVMETIS 6
/* Matching Schemes */
#define MATCH_RM 1
#define MATCH_HEM 2
#define MATCH_SHEM 3
#define MATCH_SHEMKWAY 4
#define MATCH_SHEBM_ONENORM 5
#define MATCH_SHEBM_INFNORM 6
#define MATCH_SBHEM_ONENORM 7
#define MATCH_SBHEM_INFNORM 8
/* Initial partitioning schemes for PMETIS and ONMETIS */
#define IPART_GGPKL 1
#define IPART_GGPKLNODE 2
#define IPART_RANDOM 2
/* Refinement schemes for PMETIS */
#define RTYPE_FM 1
/* Initial partitioning schemes for KMETIS */
#define IPART_PMETIS 1
/* Refinement schemes for KMETIS */
#define RTYPE_KWAYRANDOM 1
#define RTYPE_KWAYGREEDY 2
#define RTYPE_KWAYRANDOM_MCONN 3
/* Refinement schemes for ONMETIS */
#define RTYPE_SEP2SIDED 1
#define RTYPE_SEP1SIDED 2
/* Initial Partitioning Schemes for McKMETIS */
#define IPART_McPMETIS 1 /* Simple McPMETIS */
#define IPART_McHPMETIS 2 /* horizontally relaxed McPMETIS */
#define UNMATCHED -1
#define HTABLE_EMPTY -1
#define NGR_PASSES 4 /* Number of greedy refinement passes */
#define NLGR_PASSES 5 /* Number of GR refinement during IPartition */
#define LARGENIPARTS 8 /* Number of random initial partitions */
#define SMALLNIPARTS 3 /* Number of random initial partitions */
#define COARSEN_FRACTION 0.75 /* Node reduction between succesive coarsening levels */
#define COARSEN_FRACTION2 0.90 /* Node reduction between succesive coarsening levels */
#define UNBALANCE_FRACTION 1.05
#define COMPRESSION_FRACTION 0.85
#define ORDER_UNBALANCE_FRACTION 1.10
#define MMDSWITCH 200
#define HORIZONTAL_IMBALANCE 1.05
/* Debug Levels */
#define DBG_TIME 1 /* Perform timing analysis */
#define DBG_OUTPUT 2
#define DBG_COARSEN 4 /* Show the coarsening progress */
#define DBG_REFINE 8 /* Show info on communication during folding */
#define DBG_IPART 16 /* Show info on initial partition */
#define DBG_MOVEINFO 32 /* Show info on communication during folding */
#define DBG_KWAYPINFO 64 /* Show info on communication during folding */
#define DBG_SEPINFO 128 /* Show info on communication during folding */
|