Frontal Solvers for Process Engineering: Local Row Ordering Strategies
K. V. Camarda and M. A. Stadtherr
The solution of chemical process simulation and optimization problems on
today's high performance supercomputers requires algorithms that can take
advantage of vector and parallel processing when solving the large, sparse
matrices that arise. The frontal method can be highly efficient in this
context due to its ability to make use of vectorizable dense matrix kernels
on a relatively small frontal matrix in the innermost loop of the computation.
However, the ordering of the rows in the coefficient matrix strongly affects
size of the frontal matrix and thus the solution time. If a poor row ordering
is used it may make the frontal method uncompetitive with other methods.
We describe here a graph theoretical framework for identifying suitable
row orderings that specifically addresses the issue of frontal matrix size.
This leads to local, heuristic methods which aim to limit frontal matrix
growth in the row and/or column dimensions. Results on a wide range of
test problems indicate that improvements in frontal solver performance
can often be obtained by the use of a restricted minimum column degree
heuristic, which can be viewed as a variation of the minimum degree heuristic
used in other contexts. Results also indicate that the natural unit-block
structure of process simulation problems provides a quite reasonable ordering.
Comput. Chem. Eng., 22, 333-341 (1998)