CS 290H Lecture 9 Leftlooking LU with partial pivoting - PowerPoint PPT Presentation

1 / 13
About This Presentation
Title:

CS 290H Lecture 9 Leftlooking LU with partial pivoting

Description:

... of x by depth-first search from nonzeros of b ... dfs in G(LT) to predict nonzeros of x; x(1:n) = b(1:n) ... Depth-first search calls 'visit' once per flop ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 14
Provided by: JohnGi84
Category:

less

Transcript and Presenter's Notes

Title: CS 290H Lecture 9 Leftlooking LU with partial pivoting


1
CS 290H Lecture 9Left-looking LU with partial
pivoting
  • Read A supernodal approach to sparse partial
    pivoting (course reader 4), sections 1 through
    4 except 2.3.
  • Final project
  • Either an algorithms experiment, or an
    application experiment, or a survey paper
    and talk
  • Experiments can be solo or group surveys are
    solo
  • Suggested term projects on course web site
  • Choose a project this week email me or come
    talk about it
  • Course grade will be 2/3 on homework, 1/3 on
    project

2
Directed Graph
A
G(A)
  • A is square, unsymmetric, nonzero diagonal
  • Edges from rows to columns
  • Symmetric permutations PAPT

3
Depth-first search and postorder
  • dfs (starting vertices)
  • marked(1 n) false
  • p 1
  • for each starting vertex v do visit(v)
  • visit (v)
  • if marked(v) then return marked(v)
    true
  • for each edge (v, w) do
    visit(w)
  • postorder(v) p p p 1
  • When G is acyclic, postorder(v) gt postorder(w)
    for every edge (v, w)

4
Sparse Triangular Solve
G(LT)
L
x
b
  • Symbolic
  • Predict structure of x by depth-first search from
    nonzeros of b
  • Numeric
  • Compute values of x in topological order

Time O(flops)
5
Sparse-sparse triangular solve x L \ b
  • Column oriented
  • dfs in G(LT) to predict nonzeros of xx(1n)
    b(1n)for j nonzero indices of x in
    topological order x(j) x(j) / L(j, j)
  • x(j1n) x(j1n) L(j1n, j) x(j)
    end
  • Depth-first search calls visit once per flop
  • Runs in O(flops) time even if its less than
    nnz(L) or n
  • Except for one-time O(n) SPA setup

6
Depth-first search and postorder
  • dfs (starting vertices)
  • marked(1 n) false
  • p 1
  • for each starting vertex v do if
    not marked(v) then visit(v)
  • visit (v)
  • marked(v) true
  • for each edge (v, w) do if not
    marked(w) then visit(w)
  • postorder(v) p p p 1
  • When G is acyclic, postorder(v) gt postorder(w)
    for every edge (v, w)

7
Structure prediction for sparse solve

G(A)
A
x
b
  • Given the nonzero structure of b, what is the
    structure of x?
  • Vertices of G(A) from which there is a path to a
    vertex of b.

8
Nonsymmetric Gaussian elimination
  • A LU does not always exist, can be unstable
  • PA LU Partial pivoting
  • At each elimination step, pivot on
    largest-magnitude element in column
  • GEPP is the standard algorithm for dense
    nonsymmetric systems
  • PAQ LU Complete pivoting
  • Pivot on largest-magnitude element in the entire
    uneliminated matrix
  • Expensive to search for the pivot
  • No freedom to reorder for sparsity
  • Hardly ever used in practice
  • Conflict between permuting for sparsity and for
    numerics
  • Lots of different approaches to this tradeoff
    well look at a few

9
Symbolic sparse Gaussian elimination A LU
A
G (A)
  • Add fill edge a -gt b if there is a path from a to
    b through lower-numbered vertices.
  • But this doesnt work with numerical pivoting!

10
Nonsymmetric Ax b Gaussian elimination with
partial pivoting
P

x
  • PA LU
  • Sparse, nonsymmetric A
  • Rows permuted by partial pivoting
  • Columns may be preordered for sparsity

11
Modular Left-looking LU
  • Alternatives
  • Right-looking Markowitz Duff, Reid, . . .
  • Unsymmetric multifrontal Davis, . . .
  • Symmetric-pattern methods Amestoy, Duff, . .
    .
  • Complications
  • Pivoting gt Interleave symbolic and numeric
    phases
  • Preorder Columns
  • Symbolic Analysis
  • Numeric and Symbolic Factorization
  • Triangular Solves
  • Lack of symmetry gt Lots of issues . . .

12
  • Symmetric A implies G(A) is chordal, with lots
    of structure and elegant theory
  • For unsymmetric A, things are not as nice
  • No known way to compute G(A) faster than
    Gaussian elimination
  • No fast way to recognize perfect elimination
    graphs
  • No theory of approximately optimal orderings
  • Directed analogs of elimination tree Smaller
    graphs that preserve path structure

13
Left-looking Column LU Factorization
  • for column j 1 to n do
  • solve
  • pivot swap ujj and an elt of lj
  • scale lj lj / ujj
  • Column j of A becomes column j of L and U
Write a Comment
User Comments (0)
About PowerShow.com