Parallel Solution of Symmetric Eigenvalue Problems Zack 2/21/2014 - - PowerPoint PPT Presentation

parallel solution of
SMART_READER_LITE
LIVE PREVIEW

Parallel Solution of Symmetric Eigenvalue Problems Zack 2/21/2014 - - PowerPoint PPT Presentation

Parallel Solution of Symmetric Eigenvalue Problems Zack 2/21/2014 Typically, the eigenvalue problem is solved in three successive steps: Reduction to tridiagonal form Solution of the tridiagonal eigenproblem Back transformation


slide-1
SLIDE 1

Parallel Solution of Symmetric Eigenvalue Problems

Zack 2/21/2014

slide-2
SLIDE 2
  • Typically, the eigenvalue problem is solved in

three successive steps:

– Reduction to tridiagonal form – Solution of the tridiagonal eigenproblem – Back transformation of the computed eigenvectors to those of the original matrix

slide-3
SLIDE 3
  • (2005) Compute all eigenpairs of a

15,000*15,000 matrix on 16 processor:

– 546s for reduction – 22.2s for tridiagonal solution – 160s for backtransformation

slide-4
SLIDE 4
slide-5
SLIDE 5

Reduction to banded (full matrix)

  • Householder transformation
  • Original one-step tridiagonalization
slide-6
SLIDE 6

If we only reduce the matrix to banded form, the update can be done with a block orthogonal transformation, such as WY representation 𝑅 = 𝐽 + 𝑋𝑍𝑈 with width-b matrices W and Y, then the vast majority of the operations can be done with highly efficient BLAS-3 routines instead

  • f memory bandwidth-limited BLAS-2 or BLAS-1.
slide-7
SLIDE 7

Band-to-tridiagonal

slide-8
SLIDE 8

Band-to-tridiagonal

slide-9
SLIDE 9

Band-to-tridiagonal

slide-10
SLIDE 10

Band-to-tridiagonal

slide-11
SLIDE 11

Band-to-tridiagonal

slide-12
SLIDE 12

Band-to-tridiagonal

slide-13
SLIDE 13
  • Algorithm
slide-14
SLIDE 14

Reduction to banded (sparse matrix)

  • Cuthill-McKee(CMK) ordering
slide-15
SLIDE 15

1 𝑦 2 … 𝑦 3 4 𝑦 𝑦 𝑦 𝑦 5 6 7 → 1 𝑦 2 … 𝑦 5 𝑦 3 𝑦 6 𝑦 4 𝑦 7 Band 3  band 1 With CMK method, we can reduce the band without flop computation

slide-16
SLIDE 16

1 2 … 𝑦 𝑦 3 4 𝑦 𝑦 5 6 𝑦 𝑦 7 → 1 2 … 𝑦 𝑦 3 𝑦 7 𝑦 𝑦 𝑦 5 6 4 Band 6  band 3 if some node has large degree, it is hard to reduce band to a small number with permutation.

slide-17
SLIDE 17
  • A possible way to deal with the nodes which

has large degree:

  • 1. move these nodes to bottom;
  • 2. solve the eigen-update

𝐵 𝑐 𝑐𝑈 𝑑 𝑦 𝑧 = 𝜇 𝑦 𝑧 where A is banded matrix, which is easy to be decomposed, b is dense vector.

slide-18
SLIDE 18
  • 𝐵

𝑐 𝑐𝑈 𝑑 𝑦 𝑧 = 𝜇 𝑦 𝑧  𝐵𝑦 + 𝑐𝑧 = 𝜇𝑦 𝑐𝑈𝑦 + 𝑑𝑧 = 𝜇𝑧 𝐵𝑦 +

𝑐𝑐𝑈 𝜇−𝑑 𝑦 = 𝜇𝑦

 𝐵 +

𝑐𝑐𝑈 𝜇−𝑑 − 𝜇𝐽 𝑦 = 0

slide-19
SLIDE 19
  • 𝐵 +

𝑐𝑐𝑈 𝜇−𝑑 − 𝜇𝐽 𝑦 = 0

Suppose that 𝐵 = 𝐹𝐸𝐹𝑈 det 𝐸 + 𝑨𝑨𝑈 𝜇 − 𝑑 − 𝜇𝐽 = 0

slide-20
SLIDE 20
  • det 𝐸 +

𝑨𝑨𝑈 𝜇−𝑑 − 𝜇𝐽

= 0

  • Secular equation:

1 + 𝑗

𝑨𝑗

2

𝑒𝑗−𝜇 𝜇−𝑑 = 0

which is similar to rank-1 update

slide-21
SLIDE 21

Band-to-tridiagonal (non-uniform)

slide-22
SLIDE 22
slide-23
SLIDE 23

Tridiagonal eigensolver

Combination of bisection and inverse iteration(B&I) Able to compute a subset of k eigenpairs at reduced cost Lose orthogonality O(k2n) MRRR O(kn) QR/QL Designed to compute either all

  • r no eigenvectors

Good eigensystem O(n3) Divide-and- conquer(D&C)

slide-24
SLIDE 24

Divide-and-conquer algorithm

  • Step 1, Split

the original tridiagonal matrix could be split into two half sized submatrices:

slide-25
SLIDE 25
  • Step 2, solve subproblems

when subproblems are small enough, call QR/QL method, then we have where,

w

slide-26
SLIDE 26
  • Step 3, deflate

(1) some components zi of z are (almost) zero, (2) two elements in diagonal matrix are identical (or close), then zero elments can be generated in z

slide-27
SLIDE 27
  • Step 4, rank-1 update eigendecomposition

– Solve secular equation 1 + σ 𝑗=1

𝑜 𝜂𝑗

2

𝑒𝑗−𝜇 = 0

slide-28
SLIDE 28

Back transformation to eigenvectors

  • Eigenvectors of T  eigenvectors of A
  • 𝐹(𝐵) = 𝐼1𝐼2 … 𝐼𝑞𝐹(𝑈)
  • -- O(n2p)

– 1D data layout – 2D data layout

slide-29
SLIDE 29
slide-30
SLIDE 30
slide-31
SLIDE 31

Thank you