Symmetric Minimum Priority Ordering for Sparse Unsymmetric Factorization Patrick Amestoy ENSEEIHT-IRIT (Toulouse) Sherry Li LBNL/NERSC (Berkeley) Esmond.

Slides:



Advertisements
Similar presentations
Fill Reduction Algorithm Using Diagonal Markowitz Scheme with Local Symmetrization Patrick Amestoy ENSEEIHT-IRIT, France Xiaoye S. Li Esmond Ng Lawrence.
Advertisements

Lecture 3 Sparse Direct Method: Combinatorics Xiaoye Sherry Li Lawrence Berkeley National Laboratory, USA crd-legacy.lbl.gov/~xiaoye/G2S3/
1 Maximum flow sender receiver Capacity constraint Lecture 6: Jan 25.
ECE 552 Numerical Circuit Analysis Chapter Four SPARSE MATRIX SOLUTION TECHNIQUES Copyright © I. Hajj 2012 All rights reserved.
Siddharth Choudhary.  Refines a visual reconstruction to produce jointly optimal 3D structure and viewing parameters  ‘bundle’ refers to the bundle.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
GOLOMB RULERS AND GRACEFUL GRAPHS
CS 206 Introduction to Computer Science II 11 / 11 / Veterans Day Instructor: Michael Eckmann.
1cs542g-term Notes  Assignment 1 is out (due October 5)  Matrix storage: usually column-major.
1 Representing Graphs. 2 Adjacency Matrix Suppose we have a graph G with n nodes. The adjacency matrix is the n x n matrix A=[a ij ] with: a ij = 1 if.
Graph & BFS.
1cs542g-term Sparse matrix data structure  Typically either Compressed Sparse Row (CSR) or Compressed Sparse Column (CSC) Informally “ia-ja” format.
Chapter 9 Graph algorithms. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Graph COMP171 Fall Graph / Slide 2 Graphs * Extremely useful tool in modeling problems * Consist of: n Vertices n Edges D E A C F B Vertex Edge.
Symmetric Weighted Matching for Indefinite Systems Iain Duff, RAL and CERFACS John Gilbert, MIT and UC Santa Barbara June 21, 2002.
Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.
1 Data Structures and Algorithms Graphs I: Representation and Search Gal A. Kaminka Computer Science Department.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Sparse Matrix Methods Day 1: Overview Day 2: Direct methods Nonsymmetric systems Graph theoretic tools Sparse LU with partial pivoting Supernodal factorization.
Sparse Matrix Methods Day 1: Overview Matlab and examples Data structures Ax=b Sparse matrices and graphs Fill-reducing matrix permutations Matching and.
Graphs G = (V,E) V is the vertex set. Vertices are also called nodes and points. E is the edge set. Each edge connects two different vertices. Edges are.
1 EE 616 Computer Aided Analysis of Electronic Networks Lecture 4 Instructor: Dr. J. A. Starzyk, Professor School of EECS Ohio University Athens, OH,
Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.
The Evolution of a Sparse Partial Pivoting Algorithm John R. Gilbert with: Tim Davis, Jim Demmel, Stan Eisenstat, Laura Grigori, Stefan Larimore, Sherry.
Graph Operations And Representation. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
CS 290H Lecture 12 Column intersection graphs, Ordering for sparsity in LU with partial pivoting Read “Computing the block triangular form of a sparse.
GRAPH Learning Outcomes Students should be able to:
MUMPS A Multifrontal Massively Parallel Solver IMPLEMENTATION Distributed multifrontal.
Busby, Dodge, Fleming, and Negrusa. Backtracking Algorithm Is used to solve problems for which a sequence of objects is to be selected from a set such.
Scalabilities Issues in Sparse Factorization and Triangular Solution Sherry Li Lawrence Berkeley National Laboratory Sparse Days, CERFACS, June 23-24,
Complexity of direct methods n 1/2 n 1/3 2D3D Space (fill): O(n log n)O(n 4/3 ) Time (flops): O(n 3/2 )O(n 2 ) Time and space to solve any problem on any.
Symbolic sparse Gaussian elimination: A = LU
GRAPHS CSE, POSTECH. Chapter 16 covers the following topics Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component,
The Landscape of Sparse Ax=b Solvers Direct A = LU Iterative y’ = Ay Non- symmetric Symmetric positive definite More RobustLess Storage More Robust More.
Matrix Sparsification. Problem Statement Reduce the number of 1s in a matrix.
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Graphs.
DATA MINING LECTURE 13 Pagerank, Absorbing Random Walks Coverage Problems.
Approximation Algorithms for NP-hard Combinatorial Problems Magnús M. Halldórsson Reykjavik University Local Search, Greedy and Partitioning
Data Structures & Algorithms Graphs
1/24 Introduction to Graphs. 2/24 Graph Definition Graph : consists of vertices and edges. Each edge must start and end at a vertex. Graph G = (V, E)
Direct Methods for Sparse Linear Systems Lecture 4 Alessandra Nardi Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen.
Department of Electronic Engineering, Tsinghua University Nano-scale Integrated Circuit and System Lab. Performance Analysis of Parallel Sparse LU Factorization.
Graphs A graphs is an abstract representation of a set of objects, called vertices or nodes, where some pairs of the objects are connected by links, called.
Data Structures & Algorithms Graphs Richard Newman based on book by R. Sedgewick and slides by S. Sahni.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
Graph Theory. undirected graph node: a, b, c, d, e, f edge: (a, b), (a, c), (b, c), (b, e), (c, d), (c, f), (d, e), (d, f), (e, f) subgraph.
CS 290H 31 October and 2 November Support graph preconditioners Final projects: Read and present two related papers on a topic not covered in class Or,
CS 290H Lecture 15 GESP concluded Final presentations for survey projects next Tue and Thu 20-minute talk with at least 5 min for questions and discussion.
CS 290H Lecture 9 Left-looking LU with partial pivoting Read “A supernodal approach to sparse partial pivoting” (course reader #4), sections 1 through.
Symmetric-pattern multifrontal factorization T(A) G(A)
Conjugate gradient iteration One matrix-vector multiplication per iteration Two vector dot products per iteration Four n-vectors of working storage x 0.
Lecture 20. Graphs and network models 1. Recap Binary search tree is a special binary tree which is designed to make the search of elements or keys in.
Subject Four Graphs Data Structures. What is a graph? A data structure that consists of a set of nodes (vertices) and a set of edges that relate the nodes.
Lecture 3 Sparse Direct Method: Combinatorics
Graphs Representation, BFS, DFS
Approximating the MST Weight in Sublinear Time
Solving Linear Systems Ax=b
CS 290H Administrivia: April 16, 2008
Haim Kaplan and Uri Zwick
The Landscape of Sparse Ax=b Solvers
Graphs Representation, BFS, DFS
Matrix Martingales in Randomized Numerical Linear Algebra
Graphs.
Graph Operations And Representation
ITEC 2620M Introduction to Data Structures
Graphs G = (V, E) V are the vertices; E are the edges.
Chapter 9 Graph algorithms
Nonsymmetric Gaussian elimination
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Symmetric Minimum Priority Ordering for Sparse Unsymmetric Factorization Patrick Amestoy ENSEEIHT-IRIT (Toulouse) Sherry Li LBNL/NERSC (Berkeley) Esmond Ng LBNL/NERSC (Berkeley)

ERCIM-Rennes, Feb, Contents  Motivation  Graph models for elimination  Minimum priority metrics  Preliminary results  Summary

ERCIM-Rennes, Feb, Motivation -- New LU Factorization Algorithms  Inexpensive pre/post-processing  Equilibration (or scaling)  Pre-permute rows or columns of A to maximize its diagonal  Find a matching with maximum weight for bipartite graph of A  Example: MC64 [Duff/Koster ‘99]  Iterative refinement  GESP (static pivoting) [Li/Demmel ‘98, SuperLU_DIST]  Pivots are chosen from the diagonal  Allow half-precision perturbation of small diagonals  Unsymmetrized multifrontal [Amestoy/Puglisi ‘00, MA41_NEW]  Prefer diagonal pivoting, but threshold pivoting is possible  Allow unsymmetric fronts, but dependency graph is still a tree  Diagonal is (almost) good  Struct(L’)  Struct(U)

ERCIM-Rennes, Feb, Existing Ordering Strategies for Preserving Sparsity  Symmetric ordering algorithms on A’+A  Minimum priority  e.g., minimum degree, minimum deficiency, etc.  Graph partitioning  Hybrid  Problem: unsymmetric structure is not respected!

ERCIM-Rennes, Feb, Ordering Algorithms Revisit  Markowitz [1957] for unsymmetric matrices  At step k, pick pivot in the trailing submatrix so that:  It has minimum, and  It is bounded by a numerical threshold  Bound the size of the rank-1 update matrix  Expensive to implement because it is mixed with numerical concern  Examples: MA48 (HSL), etc.  “Restricted” Markowitz -- only look ahead a few candidate columns (rows) with the lowest degrees [Zlatev ‘80]  Minimum degree [Tinney/Walker ‘67]  Special case of Markowitz for SPD systems  Efficient implementation, because:  Diagonal is good as numerical pivot  Use quotient graph as a compact representation without regard of numerical values

ERCIM-Rennes, Feb, Simulation Result  Order(A) vs. Order(A’+A) (Markowitz vs. min degree)  Diagonal pivoting  88 unsymmetric matrices  Mean fill ratio 0.90  Mean flops ratio 0.79  54 very unsymmetric (symmetry <= 0.5)  Mean fill ratio 0.85  Mean flops ratio 0.56

ERCIM-Rennes, Feb, Elimination Rules  Symmetric  Undirected graph  After vertex i is eliminated, all its neighbors become a clique  Unsymmetric  Bipartite graph  After vertex i is eliminated, all the row and column vertices adjacent to i become fully connected -- a “clique”. (assuming diagonal pivot) ii r1 r2 c1 c2 c3 eliminate i c1r1 r2 c2 c3

ERCIM-Rennes, Feb, Cost of Implementation  Elimination models can be implemented using standard graphs or quotient graphs, with different cost in time & space.

ERCIM-Rennes, Feb, Quotient Graph -- Symmetric  Elements -- representative nodes of the connected components in the eliminated subgraph  Variables -- uneliminated nodes Current pivot p: If variable v adjacent to e1, it will be adjacent to p  e1 can be absorbed by p  p is representative of conn. comp. {e1, e2, p} e1 e2 pxx x x. element list = {e1, e2}. variable list v

ERCIM-Rennes, Feb, Quotient Graph -- Unsymmetric Current pivot p: Difficulty: Path length may be greater than 2 ! e1 e2 p x x x v

ERCIM-Rennes, Feb, Quotient Graph -- “Local Symmetrization” e1 e2 p x x x v Current pivot p: Advantage: - Path length bounded by 2 ! Disadvantage: - Lose some asymmetry - More fill ss s

ERCIM-Rennes, Feb, Minimum Priority Metrics  Metrics are based on “approximate degree” in the sense of AMD, can be implemented efficiently  Almost the same cost using various metrics:  Based on row & column counts:  PRODUCT (a.k.a. Markowitz), SUM, MIN, MAX, etc.  Minimum fill : areas associated with the existing cliques are deducted  …...

ERCIM-Rennes, Feb, Preliminary Results with Local Symmetrization  Matrices: 98 unsymmetric in structure  Metrics : based on row/column counts or fill  Solvers:  MA41_NEW : unsymmetrized multifrontal  Local symmetrization ordering is ideal for this solver  SuperLU_DIST : GESP

ERCIM-Rennes, Feb, Compare Different Metrics  Solver: MA41_NEW  Average fill ratio using various metrics with respect to Markowitz (product of row & col counts)

ERCIM-Rennes, Feb, Compare with AMD(A’+A) using Min Fill -- All Unsymmetric  MA41_NEW  SuperLU_DIST

ERCIM-Rennes, Feb, Compare with AMD(A’+A) using Min Fill -- Very Unsymmetric  MA41_NEW  SuperLU_DIST

ERCIM-Rennes, Feb, Summary  First implementation based on BQG model  Features: supervariable, element absorption, mass elimination  Using approximate degree (degree upper bound)  Tried various metrics on large collection of matrices  PRODUCT, SUM, MIN-FILL, etc.  Not a single one is universally best, MIN-FILL is often better  Local symmetrization  Cheaper to implement, harder to understand behavior  Especially suitable for unsymmetrized multifrontal, also benefit GESP  Respectable gain for very unsymmetric matrices

ERCIM-Rennes, Feb, Summary (con’d)  Results for very unsymmetric matrices  Future work  Work underway for a fully unsymmetric version  Extend to graph partitioning strategy

ERCIM-Rennes, Feb, The End

ERCIM-Rennes, Feb, x 2 x x x 3 x 4 x 5 x x x 6 x x 7 Example A G(A) row column