next up previous contents
Next: Available Parallelism in Up: Direct Linear Solvers Previous: Ordering Sparse Matrices

A Survey of the Literature

Significant research effort has been expended to examine parallel matrix solvers --- for both dense and sparse matrices. Numerous papers have documented research on parallel dense matrix solvers [8,42,43], and these articles illustrate that good efficiency is possible when solving dense matrices on multi-processor computers. The calculation time complexity of dense matrix LU factorization is , and there are sufficient, regular calculations for good parallel algorithm performance. Some implementations are better than others [42,43], nevertheless, performance is deterministic for:

Direct sparse matrix solvers, on the other hand, have computational complexity significantly less than , and actual power system sparse matrices used in this work have order of complexities less than . These orders of complexity are consistent with matrices from circuit analysis applications that have complexities ranging from to [33]. With significantly less calculations than dense direct solvers, and lacking uniform, organized communications patterns, direct parallel sparse matrix solvers often require detailed knowledge of the application to permit efficient implementations.

The bulk of recent research into parallel direct sparse matrix techniques has centered around symmetric positive definite matrices, and implementations of Choleski factorization. A significant number of papers concerning parallel Choleski factorization for symmetric positive definite matrices have been published recently [14,15,16,20]. These papers have thoroughly examined many aspects of the parallel direct sparse matrix solver implementations, symbolic factorization, and appropriate data structures. Techniques to improve interprocessor communications using block partitioning methods have been examined in [31,38,39,40,41].

Some of the most celebrated recent work has revived research into parallel sparse multifrontal Choleski techniques [18,22]. Multifrontal techniques identify parallelism within the matrix structure in a manner similar to [14,15,16,20], but then create multiple small, dense matrices from independent rows/columns of data, and update each frontal matrix with dense techniques. Parallel sparse multifrontal algorithms have shown scalable performance for very-large, extremely regular sparse structural matrices. There has been some work on solving less-regular problems. Research has recently been published in [32] that describes load balancing techniques to support the work in [31]. Also, research has been ongoing to examine techniques that can efficiently factor irregular matrices using multifrontal techniques [5,6,7].

Techniques for sparse Choleski factorization have even been developed for single-instruction-multiple-data (SIMD) computers like the Thinking Machines CM-1 and the MasPar MPP [29]. This discussion is by no means an exhaustive literature survey, although it does represent a significant portion of the direct sparse matrix research performed for vector and multi-processor computers.

References [14,15,16,20,38,39,40,41] have kept with a general two step preprocessing paradigm for parallel sparse Choleski factorization:

  1. order the matrix to minimize fillin,
  2. symbolic factorization to identify fillin and set up static data structures,
In this paper, we break from this two step pre-processing paradigm and introduce a new three-step preprocessing phase that includes ordering, pseudo-factorization, and explicit load balancing. The pseudo-factorization step is similar to the symbolic factorization step, although we require that the number of calculations in matrix partitions be calculated so that we can perform explicit load-balancing on the majority of the sparse matrix. Our three-step preprocessing phase is described in section 5.



next up previous contents
Next: Available Parallelism in Up: Direct Linear Solvers Previous: Ordering Sparse Matrices



David P. Koester
Sun Oct 22 15:31:10 EDT 1995