Tiebreaking the Minimum Degree Algorithm For
Total Page:16
File Type:pdf, Size:1020Kb
TIEBREAKING THE MINIMUM DEGREE ALGORITHM FOR ORDERING SPARSE SYMMETRIC POSITIVE DEFINITE MATRICES by IAN ALFRED CAVERS B.Sc. The University of British Columbia, 1984 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE in THE FACULTY OF GRADUATE STUDIES DEPARTMENT OF COMPUTER SCIENCE We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA December 1987 © Ian Alfred Cavers, 1987 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of Computer Science The University of British Columbia 1956 Main Mall Vancouver, Canada V6T 1Y3 Date December 16, 1987 DE-6(3/81) Abstract The minimum degree algorithm is known as an effective scheme for identifying a fill reduced ordering for symmetric, positive definite, sparse linear systems, to be solved using a Cholesky factorization. Although the original algorithm has been enhanced to improve the efficiency of its implementation, ties between minimum degree elimination candidates are still arbitrarily broken. For many systems, the fill levels of orderings produced by the minimum degree algorithm are very sensitive to the precise manner in which these ties are resolved. This thesis introduces several tiebreaking enhancements of the minimum degree algorithm. Emphasis is placed upon a tiebreaking strategy based upon the deficiency of minium degree elimination candidates, and which can consistently identify low fill orderings for a wide spectrum of test problems. All tiebreaking strategies are fully integrated into implementations of the minimum degree algorithm based upon a quotient graph model, including indistinguishable sets represented by uneliminated supernodes. The resulting programs are tested on a wide variety of sparse systems in order to investigate the performance of the algorithm enhanced by the tiebreaking strategies and the quality of the orderings they produce. ii Contents Abstract ii Table of Contents iii List of Tables ix List of Figures xi Acknowledgements xii 1 Introduction 1 1.1 The Solution of Sparse Linear Systems 1 1.2 Thesis Overview 7 2 Evolution of the Minimum Degree Algorithm 8 2.1 The Cholesky Factorization of Symmetric Positive Definite Systems 8 2.2 Representation of Symmetric Matrices Using Graphs 10 2.3 Origin of the MDA 14 2.4 Elimination Graph Model 16 2.4.1 Elimination Graphs 17 iii 2.4.2 The MDA and the Elimination Graph Model 21 2.4.3 Implementation Limitations of the Elimination Graph Model 22 2.5 Reachable Set Model 25 2.5.1 Implicit Formation of Elimination Graphs 25 2.5.2 The MDA and the Reachable Set Model 27 2.5.3 Implementation Limitations of the Reachable Sets Model 28 2.6 The Quotient Graph Model 31 2.6.1 Eliminated Supernodes 32 2.6.2 Formalisms of Quotient Graphs 33 2.6.3 Successive Quotient Graph Formation 35 2.6.4 The MDA and the Quotient Graph Model 36 2.6.5 Storage Requirements of the Quotient Graph Model 38 2.7 Mass Elimination of Indistinguishable Nodes 42 2.7.1 Indistinguishable Nodes 43 2.7.2 Integration of Uneliminated Supernodes into the MDA . 44 2.7.3 Identification of Indistinguishable Sets 46 2.7.4 The MDA With Uneliminated Supernodes 48 2.7.5 Supernode Efficiency Considerations 51 2.8 External Degree of Uneliminated Supernodes 51 2.9 Further Extensions 53 2.9.1 Incomplete Degree Updating 53 iv 2.9.2 Multiple Elimination 54 3 Primary Tiebreaking of the MDA 56 3.1 Tiebreaking Motivation 56 3.2 Tiebreaking Goals 58 3.3 Other Tiebreaking Research 59 3.4 Proposed Tiebreaking Strategy 60 3.5 Deficiency Calculations 64 3.6 Connectivity Lists 66 3.7 Deficiency and Uneliminated Supernodes 67 3.7.1 Normal Deficiency Calculations With Supernodes 67 3.7.2 The Deficiency, Degree and Elimination of Supernodes 70 3.8 Degree and Connectivity Updating 74 3.9 MDA With Deficiency Tiebreaking 81 3.10 Compatibility of Tiebreaking With Additional MDA Extensions 86 3.10.1 Tiebreaking and Incomplete Updating 86 3.10.2 Tiebreaking and Multiple Elimination 88 4 Secondary Tiebreaking of the MDA 90 4.1 Motivation and Goals 90 4.2 Proposed Secondary Tiebreaking Strategies 94 4.2.1 Strategy One 94 4.2.2 Strategy Two 101 v 4.2.3 Strategy Three 102 5 Implementation Considerations 107 5.1 Implementation Overview 107 5.2 Common Implementation Details of the Norm and Tie Modules 109 5.2.1 Common Data Structures 109 5.2.2 Successive Quotient Graph Formation 112 5.2.3 Implementation of Eliminated and Uneliminated Supern• odes 117 5.2.4 Implementation of Reachable Sets 127 5.2.5 Lower Adjacency Structure Formation 129 5.3 Distinct Features of the Norm Module 130 5.4 Distinct Features of the Tie Module 133 5.4.1 Connectivity Calculation and Updating 133 5.4.2 Connectivity Lists 134 5.4.3 The Elimination Node Selection Process 142 5.4.4 Reachable Set Storage 142 5.4.5 Degree and Reachable Set Updating 146 5.5 Implementation of Secondary Tiebreaking 148 5.6 Implementation of the Solve Module 149 6 Results and Analysis 152 6.1 Testing Environment 152 6.2 Test Problems 153 6.3 Primary Tiebreaking Test Results 160 vi 6.3.1 Ordering Test Results 160 6.4 Factor and Solve Timings 175 6.5 Secondary Tiebreaking Test Results 177 7 Concluding Remarks 182 7.1 Summary 182 7.2 Future Work 184 Bibliography 186 A Additional Secondary Tiebreaking Testing Results 189 vii List of Tables 3.1 Fill Fluctuations of Minimum Degree Orderings 58 4.1 Fill Fluctuations of Minimum Degree Orderings Produced With Deficiency Tiebreaking 93 5.1 Supernode Comparison 118 5.2 Node Selections With Degree < Maxcondeg 139 6.1 Harwell-Boeing Test Problems Selected 157 6.2 Test Problem Characteristics 159 6.3 Array Constants Used for Testing 161 6.4 Tie and Norm Ordering Testing 164 6.4 Continued 165 6.4 Continued 166 6.4 Continued 167 6.4 Continued 168 6.4 Continued 169 6.5 Fill Summary 170 6.6 Solution Time Summary 176 6.7 Testing of Secondary Tiebreaking 180 viii A.l Testing of Secondary Tiebreaking Criterion #3 190 A.l Continued 191 A.l Continued 192 A.l Continued 193 ix List of Figures 1.1 Effect of Preorderings on Fill 3 2.1 Representation of Symmetric Matrices Using Graphs 10 2.2 Permutations and the Relabelling of Graphs 11 2.3 Reachable Set Example 13 2.4 Elimination Graph Modelling of Cholesky Factorization 19 2.5 Fill Edge Production 20 2.6 Elimination Graph Model MDA Example 23 2.7 The Star Graph 25 2.8 Equivalence of Reachable Sets and Adjacency Sets 26 2.9 Reachable Set Model MDA Example 29 2.10 Reachable Set Inefficiences 30 2.11 Eliminated Supernode Formation 33 2.12 Example Comparing Elimination and Quotient Graph Modelling 37 2.13 Quotient Graph Model MDA Example 39 2.14 Storage Shortfall of a Supernode Representative 41 2.15 Eliminated Supernode Aadjacency Set Storage 42 2.16 An Example of Indistinguishable Nodes 44 2.17 Formation of an Uneliminated Supernode 46 x 2.18 Effects of Uneliminated Supernode Formation 50 3.1 Deficiency Example 61 3.2 Deficiency Tiebreaking Example 63 3.3 Supernode Expansion for a Connectivity Calculation 69 3.4 Elimination of a Supernode Representative 71 3.5 Connectivity and Degree Updating 76 3.6 MDA Example Using Deficiency Tiebreaking 84 3.6 Continued 85 4.1 Classification of Elimination Affected Nodes 96 4.2 Connectivity and Class Three Triangles 97 5.1 Adjacency Lists 110 5.2 Quotient Graph Transformation Example 116 5.3 Uneliminated Supernode Adjacency List Storage Example .... 120 5.4 Example of an Uneliminated Supernode Formation 124 5.5 Node Selection in the norm Module 131 5.6 Selection Degree 139 5.7 Connectivity List Length - nine point 1089 141 5.8 Connectivity Index Length - nine point 1089 141 6.1 The Initial Mesh of fullspider 154 6.2 The Initial Mesh of 6hole 155 6.3 The Initial Mesh of Shole 155 xi Acknowledgements First and foremost I would like to thank my supervisor, Dr. Jim Varah, for the advice, guidance and support he has given me while writing this thesis. Many thanks are also extended to Dr. Uri Ascher for reading the final draft. In addition, I would like to thank my fellow graduate students for answering my many questions and Roger Grimes of Boeing Computer Services who provided many of the test problems. Finally, I would like to thank my wife Diana for her endless support and patience despite the many lonely evenings. xii Chapter 1 Introduction 1.1 The Solution of Sparse Linear Systems This thesis discusses the solution of large systems of linear algebraic equations of the form: Ax = b (1.1) where A is an iVxJV sparse matrix, and 6 and x are both column vectors of dimension N. A precise definition of the term sparse matrix is very difficult and is often the subject of much debate. For the purposes of this thesis a matrix is considered sparse if few of its coefficients are nonzero. Acceptable nonzero percentages have been suggested but more practically Duff [DER86] suggests that "a matrix is sparse if there is an advantage in exploiting its zeros".