1\relax
2\@writefile{toc}{\contentsline {section}{Abstract}{1}}
3\citation{MPI:book}
4\citation{MPI:standard}
5\citation{jp:pcolor}
6\citation{jp:super}
7\citation{jp:bell_prize}
8\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}}
9\newlabel{sec:intro}{{1}{2}}
10\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Effective use of total memory by \BS }}{2}}
11\newlabel{tab:mem}{{1}{2}}
12\citation{jp:super}
13\citation{jp:olaf}
14\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Efficient use of different processor architectures by \BS }}{3}}
15\newlabel{tab:perf}{{2}{3}}
16\citation{petsc}
17\citation{template}
18\citation{chaco2}
19\@writefile{toc}{\contentsline {section}{\numberline {2}Algorithm Descriptions}{4}}
20\newlabel{sec:algorithms}{{2}{4}}
21\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Processor Performance}{4}}
22\citation{jp:pcolor}
23\citation{jp:scalable}
24\citation{jp:bell_prize}
25\citation{jp:copper}
26\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Multicolor Ordering}{5}}
27\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces A subgraph generated by a two-dimensional, bilinear finite-element model with three degrees of freedom per discretization point. The geometric partition shown by the dotted lines yields an assignment of the vertices in the enclosed subregion to one processor. The upper right figure shows one possible decomposition of the graph into local cliques, and the lower figure shows the corresponding clique (or supernode) graph. }}{6}}
28\newlabel{fig:inode}{{1}{6}}
29\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Communication Efficiency}{6}}
30\@writefile{toc}{\contentsline {section}{\numberline {3}The {\it  BlockSolve95}\ Computing Environment}{8}}
31\newlabel{sec:context}{{3}{8}}
32\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Initializing and Finalizing the {\it  BlockSolve95}\ Environment}{8}}
33\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}The {\it  BlockSolve95}\ Context {\tt  BSprocinfo}}{8}}
34\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.1}Parallel Environment Options}{8}}
35\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.2}Factorization Options}{9}}
36\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.2.3}Solver Options}{11}}
37\citation{template}
38\@writefile{toc}{\contentsline {section}{\numberline {4}The User Matrix Data Structure {\tt  BSspmat}}{12}}
39\newlabel{sec:data}{{4}{12}}
40\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}The Easy Way to Convert Your Data to {\tt  BSspmat}}{12}}
41\newlabel{eqn:crs}{{1}{12}}
42\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces The values of the arrays $rp$, $cval$, and $aval$ for the matrix given in equation\penalty \@M \ {1\hbox {}}. The matrix is partitioned so that processor $0$ is assigned rows $0$ and $1$ and processor $1$ has rows $2$ and $3$. Note that indexing of the arrays and the matrices rows and columns begins with 0.}}{13}}
43\newlabel{fig:crs}{{2}{13}}
44\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}The Advanced Way to Convert Matrix Data to {\tt  BSspmat}}{13}}
45\@writefile{toc}{\contentsline {section}{\numberline {5}Manipulating and Solving Sparse Systems}{16}}
46\newlabel{sec:main}{{5}{16}}
47\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Manipulation and Setup}{16}}
48\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.1}Symmetric and Nonsymmetric Matrices}{16}}
49\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.2}Fast Reorderings for Different Matrix Nonzero Values}{16}}
50\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces Consequences of choosing incomplete Cholesky or incomplete LU for symmetric or nonsymmetric matrices}}{17}}
51\newlabel{tab:sym}{{3}{17}}
52\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.3}Diagonal Scaling of the Linear System}{17}}
53\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.4}The Communication Data Structure {\tt  BScomm}}{17}}
54\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.5}Computing an Incomplete Factorization}{18}}
55\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.1.6}What to Do If the Factorization Fails}{18}}
56\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Solving the Linear System}{19}}
57\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Freeing Matrices}{20}}
58\@writefile{toc}{\contentsline {section}{\numberline {6}Error Checking, Flop Counting, Message Passing, and the BLAS}{21}}
59\newlabel{sec:misc}{{6}{21}}
60\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Error Checking within {\it  BlockSolve95}}{21}}
61\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}Flop Counting}{21}}
62\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}Matrix Statistics}{22}}
63\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}Blocking and Nonblocking Messages}{22}}
64\@writefile{toc}{\contentsline {subsection}{\numberline {6.5}MPI Communicators and Message Number Conflicts}{22}}
65\@writefile{toc}{\contentsline {subsection}{\numberline {6.6}Inline Macros for the BLAS}{23}}
66\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces Comparison of the single-processor performance of {\it  BlockSolve95}\ conjugate gradient and GMRES iterations, with vendor-supplied, Level-2 BLAS (GEMV and TRMV) and the new inline macros. The symmetric systems are solved with the conjugate gradient method; the nonsymmetric systems are solved with GMRES.}}{23}}
67\newlabel{tab:blas}{{4}{23}}
68\citation{petsc}
69\@writefile{toc}{\contentsline {section}{\numberline {7}Installation}{24}}
70\newlabel{sec:install}{{7}{24}}
71\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Other Libraries}{24}}
72\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}UNIX {\tt  man} Pages}{24}}
73\@writefile{toc}{\contentsline {subsection}{\numberline {7.3}Availability of {\it  BlockSolve95}}{24}}
74\@writefile{toc}{\contentsline {subsection}{\numberline {7.4}Differences between Previous {\em  BlockSolve} Versions}{25}}
75\@writefile{toc}{\contentsline {section}{\numberline {8}Example Programs}{26}}
76\newlabel{sec:examples}{{8}{26}}
77\citation{gjp:balanced}
78\@writefile{toc}{\contentsline {section}{\numberline {9}Limitations and Future Plans}{29}}
79\newlabel{sec:plans}{{9}{29}}
80\citation{petsc}
81\citation{jp:refine}
82\@writefile{toc}{\contentsline {section}{\numberline {10}Related Software}{30}}
83\newlabel{sec:related}{{10}{30}}
84\@writefile{toc}{\contentsline {section}{Acknowledgments}{31}}
85\bibstyle{siam}
86\bibdata{blocksolve}
87\bibcite{petsc}{1}
88\bibcite{template}{2}
89\bibcite{gjp:balanced}{3}
90\bibcite{MPI:book}{4}
91\bibcite{chaco2}{5}
92\bibcite{jp:copper}{6}
93\bibcite{jp:bell_prize}{7}
94\bibcite{jp:super}{8}
95\bibcite{jp:pcolor}{9}
96\bibcite{jp:olaf}{10}
97\bibcite{jp:scalable}{11}
98\bibcite{jp:refine}{12}
99\bibcite{MPI:standard}{13}
100\@writefile{toc}{\contentsline {section}{References}{32}}
101\@writefile{toc}{\contentsline {section}{Subject Index}{32}}
102\@input{sindex.aux}
103\@input{findex.aux}
104\@writefile{toc}{\contentsline {section}{Function Index}{34}}
105