CS 290H Lecture 12 Column intersection graphs, Ordering for sparsity in LU with partial pivoting Read “Computing the block triangular form of a sparse.

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/
ECE 552 Numerical Circuit Analysis Chapter Four SPARSE MATRIX SOLUTION TECHNIQUES Copyright © I. Hajj 2012 All rights reserved.
CS 240A: Solving Ax = b in parallel Dense A: Gaussian elimination with partial pivoting (LU) Same flavor as matrix * matrix, but more complicated Sparse.
Department of Electronic Engineering, Tsinghua University Nano-scale Integrated Circuit and System Lab. GPU Sparse LU Factorization and Its Application.
MATH 685/ CSI 700/ OR 682 Lecture Notes
Solving Linear Systems (Numerical Recipes, Chap 2)
Lecture 7 Intersection of Hyperplanes and Matrix Inverse Shang-Hua Teng.
Sparse Matrices in Matlab John R. Gilbert Xerox Palo Alto Research Center with Cleve Moler (MathWorks) and Rob Schreiber (HP Labs)
Solution of linear system of equations
Lecture 11 - LU Decomposition
Symmetric Minimum Priority Ordering for Sparse Unsymmetric Factorization Patrick Amestoy ENSEEIHT-IRIT (Toulouse) Sherry Li LBNL/NERSC (Berkeley) Esmond.
1cs542g-term Notes  Assignment 1 is out (questions?)
1cs542g-term Notes  Assignment 1 is out (due October 5)  Matrix storage: usually column-major.
1cs542g-term Sparse matrix data structure  Typically either Compressed Sparse Row (CSR) or Compressed Sparse Column (CSC) Informally “ia-ja” format.
Chapter 10 LU Decomposition.
CS 290H: Sparse Matrix Algorithms
1cs542g-term Notes  Note that r 2 log(r) is NaN at r=0: instead smoothly extend to be 0 at r=0  Schedule a make-up lecture?
The Landscape of Ax=b Solvers Direct A = LU Iterative y’ = Ay Non- symmetric Symmetric positive definite More RobustLess Storage (if sparse) More Robust.
CS 240A: Solving Ax = b in parallel °Dense A: Gaussian elimination with partial pivoting Same flavor as matrix * matrix, but more complicated °Sparse A:
Graph Algorithms in Numerical Linear Algebra: Past, Present, and Future John R. Gilbert MIT and UC Santa Barbara September 28, 2002.
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.
CS240A: Conjugate Gradients and the Model Problem.
1 EE 616 Computer Aided Analysis of Electronic Networks Lecture 4 Instructor: Dr. J. A. Starzyk, Professor School of EECS Ohio University Athens, OH,
The Evolution of a Sparse Partial Pivoting Algorithm John R. Gilbert with: Tim Davis, Jim Demmel, Stan Eisenstat, Laura Grigori, Stefan Larimore, Sherry.
Chapter 12 Gaussian Elimination (II) Speaker: Lung-Sheng Chien Reference book: David Kincaid, Numerical Analysis Reference lecture note: Wen-wei Lin, chapter.
CS 290H Lecture 17 Dulmage-Mendelsohn Theory
MA2213 Lecture 5 Linear Equations (Direct Solvers)
Using LU Decomposition to Optimize the modconcen.m Routine Matt Tornowske April 1, 2002.
Scalabilities Issues in Sparse Factorization and Triangular Solution Sherry Li Lawrence Berkeley National Laboratory Sparse Days, CERFACS, June 23-24,
TECHNIQUES ALGORITHMS AND SOFTWARE FOR THE DIRECT SOLUTION OF LARGE SPARSE LINEAR EQUATIONS.
Solving Scale Linear Systems (Example system continued) Lecture 14 MA/CS 471 Fall 2003.
Introduction to Numerical Analysis I MATH/CMPSC 455 PA=LU.
Symbolic sparse Gaussian elimination: A = LU
Lecture 5 Parallel Sparse Factorization, Triangular Solution
The Landscape of Sparse Ax=b Solvers Direct A = LU Iterative y’ = Ay Non- symmetric Symmetric positive definite More RobustLess Storage More Robust More.
CS 290H Lecture 5 Elimination trees Read GLN section 6.6 (next time I’ll assign 6.5 and 6.7) Homework 1 due Thursday 14 Oct by 3pm turnin file1.
 6.2 Pivoting Strategies 1/17 Chapter 6 Direct Methods for Solving Linear Systems -- Pivoting Strategies Example: Solve the linear system using 4-digit.
MA/CS 375 Fall MA/CS 375 Fall 2002 Lecture 21.
Lecture 8 Matrix Inverse and LU Decomposition
Solution of Sparse Linear Systems
Lecture 4 Sparse Factorization: Data-flow Organization
CS240A: Conjugate Gradients and the Model Problem.
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.
Direct Methods for Linear Systems Lecture 3 Alessandra Nardi Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen Veroy.
Administrivia: October 5, 2009 Homework 1 due Wednesday Reading in Davis: Skim section 6.1 (the fill bounds will make more sense next week) Read section.
CS 290H Administrivia: May 14, 2008 Course project progress reports due next Wed 21 May. Reading in Saad (second edition): Sections
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)
Unit #1 Linear Systems Fall Dr. Jehad Al Dallal.
Conjugate gradient iteration One matrix-vector multiplication per iteration Two vector dot products per iteration Four n-vectors of working storage x 0.
PIVOTING The pivot or pivot element is the element of a matrix, or an array, which is selected first by an algorithm (e.g. Gaussian elimination, simplex.
Power Systems Network and Clique Decomposition
Spring Dr. Jehad Al Dallal
Model Problem: Solving Poisson’s equation for temperature
CS 290N / 219: Sparse Matrix Algorithms
Solving Linear Systems Ax=b
Linear Equations.
CS 290H Administrivia: April 16, 2008
The Landscape of Sparse Ax=b Solvers
Programming #4 Computer Problems
CS 290H Lecture 3 Fill: bounds and heuristics
Numerical Analysis Lecture10.
Read GLN sections 6.1 through 6.4.
Lecture 8 Matrix Inverse and LU Decomposition
Nonsymmetric Gaussian elimination
Presentation transcript:

CS 290H Lecture 12 Column intersection graphs, Ordering for sparsity in LU with partial pivoting Read “Computing the block triangular form of a sparse matrix” (reader #6) Homework 3 due Sunday 21 November No class next Tue 9 Nov (SC 2004) or Thu 11 Nov (holiday)

Left-looking Column LU Factorization for column j = 1 to n do solve pivot: swap u jj and an elt of l j scale: l j = l j / u jj Column j of A becomes column j of L and U L 0 L I ( ) ujljujlj = a j for u j, l j L L U A j

Supernode-Panel Updates for each panel do Symbolic factorization: which supernodes update the panel; Supernode-panel update: for each updating supernode do for each panel column do supernode-column update; Factorization within panel: use supernode-column algorithm +: “BLAS-2.5” replaces BLAS-1 -: Very big supernodes don’t fit in cache => 2D blocking of supernode-column updates jj+w-1 supernode panel } }

SuperLU: Relative Performance Speedup over GP column-column 22 matrices: Order 765 to 76480; GP factor time 0.4 sec to 1.7 hr SGI R8000 (1995)

Nonsymmetric Ax = b: Gaussian elimination with partial pivoting PA = LU Sparse, nonsymmetric A Rows permuted by partial pivoting Columns may be preordered for sparsity = x P

Column Intersection Graph G  (A) = G(A T A) if no cancellation (otherwise  ) Permuting the rows of A does not change G  (A) AG  (A)ATAATA

Filled Column Intersection Graph G  (A) = symbolic Cholesky factor of A T A In PA=LU, G(U)  G  (A) and G(L)  G  (A) Tighter bound on L from symbolic QR Bounds are best possible if A is strong Hall A chol (A T A) G  (A)

Column Elimination Tree Elimination tree of A T A (if no cancellation) Depth-first spanning tree of G  (A) Represents column dependencies in various factorizations A chol (A T A) T  (A) +

Column Dependencies in PA = LU If column j modifies column k, then j  T  [k]. k j T[k]T[k] If A is strong Hall then, for some pivot sequence, every column modifies its parent in T  (A).

Efficient Structure Prediction Given the structure of (unsymmetric) A, one can find... column elimination tree T  (A) row and column counts for G  (A) supernodes of G  (A) nonzero structure of G  (A)... without forming G  (A) or A T A + + +

Column Preordering for Sparsity PAQ T = LU: Q preorders columns for sparsity, P is row pivoting Column permutation of A  Symmetric permutation of A T A (or G  (A)) Symmetric ordering: Approximate minimum degree But, forming A T A is expensive (sometimes bigger than L+U). = x P Q

Column Approximate Minimum Degree Column Approximate Minimum Degree [Matlab 6] Eliminate “row” nodes of aug(A) first Then eliminate “col” nodes by approximate min degree 4x speed and 1/3 better ordering than Matlab-5 min degree, 2x speed of AMD on A T A Can also use other orderings, e.g. nested dissection on aug(A) A A ATAT I I row col aug(A) G(aug(A))