File: drivers.tex

package info (click to toggle)
spooles 2.2-9
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 19,012 kB
  • sloc: ansic: 146,834; csh: 3,615; makefile: 2,040; perl: 74
file content (138 lines) | stat: -rw-r--r-- 5,352 bytes parent folder | download | duplicates (7)
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
\par
\section{Driver programs for the {\tt MSMD} object}
\label{section:MSMD:drivers}
\par
This section contains brief descriptions of four driver programs.
\par
%=======================================================================
\begin{enumerate}
%-----------------------------------------------------------------------
\item
\begin{verbatim}
orderViaMMD msglvl msgFile inGraphFile seed compressFlag prioType 
   stepType outOldToNewIVfile outNewToOldIVfile outETreeFile 
\end{verbatim}
This driver program orders a graph using the multiple minimum
degree algorithm --- exactly which algorithm is controlled by the
input parameters.
\par
\begin{itemize}
\item
The {\tt msglvl} parameter determines the amount of output.
\item
The {\tt msgFile} parameter determines the message file --- if {\tt
msgFile} is {\tt stdout}, then the output file is {\it stdout},
otherwise a file is opened with {\it append} status to receive any
output data.
\item
The {\tt inGraphFile} parameter is the input file for the {\tt Graph}
object. It must be of the form {\tt *.graphf} or {\tt *.graphb}.
The {\tt Graph} object is read from the file via the
{\tt Graph\_readFromFile()} method.
\item
The {\tt seed} parameter is a random number seed.
\item
The {\tt compressFlag} parameter controls the compression of the
graph (identifying indistinguishable nodes) 
before and during the elimination process.
\begin{itemize}
\item 
{\tt compressFlag / 4 >= 1} --- a compression step is done
before elimination.
\item 
{\tt compressFlag \% 4 == 2} --- compress after each elimination step,
consider all nodes.
\item 
{\tt compressFlag \% 4 == 1} --- compress after each elimination step,
consider only 2-adjacent nodes (the most likely to form
indistinguishable nodes).
\item 
{\tt compressFlag \% 4 == 0} --- do no compression.
\end{itemize}
\item
The {\tt prioType} parameter controls the type of priority that is
used to choose nodes to eliminate.
\begin{itemize}
\item 
{\tt prioType == 1} --- true external degree.
\item 
{\tt prioType == 2} --- approximate external degree.
\item 
{\tt prioType == 3} --- true external degree for 2-adjacent nodes,
approximate external degree for the others.
\item 
{\tt prioType == 4} --- priority of each node is zero; this
implies random elimination.
\end{itemize}
\item
The {\tt stepType} parameter controls the type of multiple
elimination to be done.
\begin{itemize}
\item 
{\tt stepType == 0} --- one vertex eliminated at each step,
like YSMP, and QMD from SPARSPAK.
\item 
{\tt stepType == 1} --- regular multiple elimination, e.g., GENMMD.
\item 
{\tt stepType > 1} --- vertices whose priority lies between
the minimum priority and {\tt stepType} times the minimum priority
are eligible for elimination at a step.
\end{itemize}
\item
The {\tt outOldToNewIVfile} parameter is the output file for the 
{\tt IV} object that contains the old-to-new permutation vector.
If {\tt outOldToNewIVfile} is {\tt "none"}, then there is no output,
otherwise {\tt outOldToNewIVfile} 
must be of the form {\tt *.ivf} or {\tt *.ivb}.
\item
The {\tt outNewToOldIVfile} parameter is the output file for the 
{\tt IV} object that contains the new-to-old permutation vector.
If {\tt outNewToOldIVfile} is {\tt "none"}, then there is no output,
otherwise {\tt outNewToOldIVfile} 
must be of the form {\tt *.ivf} or {\tt *.ivb}.
\item
The {\tt outETreeFile} parameter is the output file for the 
{\tt ETree} object that contains the front tree for the ordering.
If {\tt outETreeFile} is {\tt "none"}, then there is no output,
otherwise {\tt outETreeFile} 
must be of the form {\tt *.etreef} or {\tt *.etreeb}.
\end{itemize}
%-----------------------------------------------------------------------
\item
\begin{verbatim}
orderViaND msglvl msgFile inGraphFile inDSTreeFile seed compressFlag 
   prioType stepType outOldToNewIVfile outNewToOldIVfile outETreeFile 
\end{verbatim}
This driver program orders a graph using the incomplete nested 
dissection algorithm.
The stages of elimination are generated by a {\tt DSTree} 
domain/separator tree object that is read in from the
{\tt inDSTreeFile} file.
All the other parameters are the same as for the {\tt orderViaMMD}
driver program.
%-----------------------------------------------------------------------
\item
\begin{verbatim}
orderViaMS msglvl msgFile inGraphFile inDSTreeFile seed compressFlag 
   prioType stepType outOldToNewIVfile outNewToOldIVfile outETreeFile 
\end{verbatim}
This driver program orders a graph using the multisection algorithm.
The stages of elimination are generated by a {\tt DSTree} 
domain/separator tree object that is read in from the
{\tt inDSTreeFile} file.
All the other parameters are the same as for the {\tt orderViaMMD}
driver program.
%-----------------------------------------------------------------------
\item
\begin{verbatim}
orderViaStages msglvl msgFile inGraphFile inStagesIVfile seed compressFlag 
   prioType stepType outOldToNewIVfile outNewToOldIVfile outETreeFile 
\end{verbatim}
This driver program orders a graph using the multi-stage minimum
degree algorithm.
The stages of elimination are found in an {\tt IV} object that is
read in from the {\tt inStagesIVfile} file.
All the other parameters are the same as for the {\tt orderViaMMD}
driver program.
%-----------------------------------------------------------------------
\end{enumerate}