Hypergraph Partitioning-Based Fill-Reducing Ordering for Symmetric Matrices

A typical first step of a direct solver for the linear system $Mx=b$ is reordering of the symmetric matrix $M$ to improve execution time and space requirements of the solution process. In this work, we propose a novel nested-dissection-based ordering approach that utilizes hypergraph partitioning. Our approach is based on the formulation of graph partitioning by vertex separator (GPVS) problem as a hypergraph partitioning problem. This new formulation is immune to deficiency of GPVS in a multilevel framework and hence enables better orderings. In matrix terms, our method relies on the existence of a structural factorization of the input $M$ matrix in the form of $M=AA^T$ (or $M=AD^2A^T$). We show that the partitioning of the row-net hypergraph representation of the rectangular matrix $A$ induces a GPVS of the standard graph representation of matrix $M$. In the absence of such factorization, we also propose simple, yet effective structural factorization techniques that are based on finding an edge clique cover of the standard graph representation of matrix $M$, and hence applicable to any arbitrary symmetric matrix $M$. Our experimental evaluation has shown that the proposed method achieves better ordering in comparison to state-of-the-art graph-based ordering tools even for symmetric matrices where structural $M=AA^T$ factorization is not provided as an input. For matrices coming from linear programming problems, our method enables even faster and better orderings.

[1]  A. George,et al.  A Comparison of Some Methods for Solving Sparse Linear Least-Squares Problems , 1983 .

[2]  E. Ng,et al.  Predicting structure in nonsymmetric sparse matrix factorizations , 1993 .

[3]  James Demmel,et al.  A Supernodal Approach to Sparse Partial Pivoting , 1999, SIAM J. Matrix Anal. Appl..

[4]  Jacek Gondzio,et al.  Implementation of Interior Point Methods for Large Scale Linear Programming , 1996 .

[5]  Ümit V. Çatalyürek,et al.  Permuting Sparse Rectangular Matrices into Block-Diagonal Form , 2004, SIAM J. Sci. Comput..

[6]  Bruce Hendrickson,et al.  Improving the Run Time and Quality of Nested Dissection Ordering , 1998, SIAM J. Sci. Comput..

[7]  Timothy A. Davis,et al.  The university of Florida sparse matrix collection , 2011, TOMS.

[8]  Joseph W. H. Liu,et al.  Applications of the Dulmage--Mendelsohn Decomposition and Network Flow to Graph Bisection Improvement , 1998 .

[9]  Rolf Niedermeier,et al.  Data Reduction, Exact, and Heuristic Algorithms for Clique Cover , 2006, ALENEX.

[10]  François Pellegrini,et al.  PT-Scotch: A tool for efficient parallel graph ordering , 2008, Parallel Comput..

[11]  Ümit V. Çatalyürek,et al.  A fine-grain hypergraph model for 2D decomposition of sparse matrices , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[12]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning: a survey , 1995, Integr..

[13]  Charles M. Fiduccia,et al.  A linear-time heuristic for improving network partitions , 1988, 25 years of DAC.

[14]  Timothy A. Davis,et al.  Algorithm 837: AMD, an approximate minimum degree ordering algorithm , 2004, TOMS.

[15]  Jorge J. Moré,et al.  Digital Object Identifier (DOI) 10.1007/s101070100263 , 2001 .

[16]  J. W. Walker,et al.  Direct solutions of sparse network equations by optimally ordered triangular factorization , 1967 .

[17]  Ümit V. Çatalyürek Hypergraph Models for Sparse Matrix Partitioning and Reordering , 1999 .

[18]  Tamara G. Kolda,et al.  Graph partitioning models for parallel computing , 2000, Parallel Comput..

[19]  Bora Uçar,et al.  Combinatorial problems in solving linear systems , 2009 .

[20]  Tamara G. Kolda,et al.  Partitioning Rectangular and Structurally Unsymmetric Sparse Matrices for Parallel Processing , 1999, SIAM J. Sci. Comput..

[21]  D. Rose A GRAPH-THEORETIC STUDY OF THE NUMERICAL SOLUTION OF SPARSE POSITIVE DEFINITE SYSTEMS OF LINEAR EQUATIONS , 1972 .

[22]  Ümit V. Çatalyürek,et al.  Hypergraph-Partitioning-Based Decomposition for Parallel Sparse-Matrix Vector Multiplication , 1999, IEEE Trans. Parallel Distributed Syst..

[23]  Bora Uçar,et al.  On Two-Dimensional Sparse Matrix Partitioning: Models, Methods, and a Recipe , 2010, SIAM J. Sci. Comput..

[24]  M. Yannakakis Computing the Minimum Fill-in is NP^Complete , 1981 .

[25]  Anshul Gupta,et al.  Fast and effective algorithms for graph partitioning and sparse-matrix ordering , 1997, IBM J. Res. Dev..

[26]  Bora Uçar,et al.  Revisiting Hypergraph Models for Sparse Matrix Partitioning , 2007, SIAM Rev..

[27]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[28]  Ümit V. Çatalyürek,et al.  OSUBMI-TR-2009-n 02 / BU-CE-0904 Hypergraph Partitioning-Based Fill-Reducing Ordering , 2009 .

[29]  R. Tarjan,et al.  The analysis of a nested dissection algorithm , 1987 .

[30]  Curt Jones,et al.  A Heuristic for Reducing Fill-In in Sparse Matrix Factorization , 1993, PPSC.

[31]  J. Cong,et al.  Multi-way VLSI Circuit Partitioning Based On Dual Net Representation , 1994, IEEE/ACM International Conference on Computer-Aided Design.

[32]  Joseph W. H. Liu,et al.  Modification of the minimum-degree algorithm by multiple elimination , 1985, TOMS.

[33]  Vipin Kumar,et al.  A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs , 1998, SIAM J. Sci. Comput..

[34]  Cleve Ashcraft,et al.  SPOOLES: An Object-Oriented Sparse Matrix Library , 1999, PPSC.

[35]  Andrew B. Kahng Fast Hypergraph Partition , 1989, 26th ACM/IEEE Design Automation Conference.

[36]  Timothy A. Davis,et al.  Hypergraph-Based Unsymmetric Nested Dissection Ordering for Sparse LU Factorization , 2010, SIAM J. Sci. Comput..

[37]  A. Brandstädt,et al.  Graph Classes: A Survey , 1987 .

[38]  Joseph W. H. Liu The Minimum Degree Ordering with Constraints , 1989 .

[39]  Patrick R. Amestoy,et al.  An Approximate Minimum Degree Ordering Algorithm , 1996, SIAM J. Matrix Anal. Appl..

[40]  A. George Nested Dissection of a Regular Finite Element Mesh , 1973 .

[41]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning , 1995 .

[42]  Ümit V. Çatalyürek,et al.  Hypergraph-Partitioning-Based Sparse Matrix Ordering , 2005 .

[43]  Bruce Hendrickson,et al.  A Multi-Level Algorithm For Partitioning Graphs , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[44]  Timothy A. Davis,et al.  A column approximate minimum degree ordering algorithm , 2000, TOMS.

[45]  Chak-Kuen Wong,et al.  Covering edges by cliques with regard to keyword conflicts and intersection graphs , 1978, CACM.

[46]  Rui Zhang,et al.  Data Reduction , 2009, Encyclopedia of Database Systems.

[47]  D. Griffel Linear programming 2: Theory and extensions , by G. B. Dantzig and M. N. Thapa. Pp. 408. £50.00. 2003 ISBN 0 387 00834 9 (Springer). , 2004, The Mathematical Gazette.

[48]  J. Pasciak,et al.  Computer solution of large sparse positive definite systems , 1982 .

[49]  Ümit V. Çatalyürek,et al.  Hypergraph Partitioning through Vertex Separators on Graphs , 2011, ArXiv.