parallel qr algorithm with aggressive early deflation
play

Parallel QR Algorithm with Aggressive Early Deflation Meiyue Shao - PowerPoint PPT Presentation

Parallel QR Algorithm with Aggressive Early Deflation Meiyue Shao Department of Computing Science and HPC2N Ume University, Sweden Joint work with R. Granat, B. Kgstr om, and D. Kressner Trogir, October 2011 Introduction 1 / 12


  1. Parallel QR Algorithm with Aggressive Early Deflation Meiyue Shao Department of Computing Science and HPC2N Umeå University, Sweden Joint work with R. Granat, B. Kågstr¨ om, and D. Kressner Trogir, October 2011

  2. Introduction — 1 / 12 — • Dense linear eigenvalue problems – Standard eigenvalue problem (SEP): Ax = λ x – Generalized eigenvalue problem (GEP): Ax = λ Bx Sometimes ALL eigenvalues are needed. Achieved via Schur decomposition: A = QTQ H or ( A , B ) = ( QS Z H , QTZ H ).

  3. Modern QR Algorithm — 2 / 12 — • QR algorithm: 1. (optional) Balancing (isolating and scaling) 2. Hessenberg reduction ( A → H ) → 3. Repeat Aggressive early deflation Multi-shift QR sweep (bulge-chasing) Until converge ( H → T ) → 4. (optional) Backward transformation.

  4. Modern QR Algorithm — 3 / 12 — • Aggressive early deflation (AED) n − n win − 1 1 n win   n − n win − 1 H 11 H 12 H 13       1 H = H 21 H 22 H 23  ,           0 n win H 32 H 33  n − n win − 1 1 n win n − n win − 1   I       1 1 U =  ,           n win V    H 11 H 12 H 13 V     U H HU = S = V H H 33 V =   H 21 H 22 H 23 V  , .           0  s S – If the last entry of the vector s is small enough, we can deflate an eigenvalue. – Otherwise, the undeflatable eigenvalue is moved up. – Reduce back to Hessenberg form after all eigenvalues are tested. – Undeflatable eigenvalues can be used as shifts in the next QR sweep.

  5. Parallel QR Algorithm — 4 / 12 — • Software structure PDHSEQR Entry routine for new parallel QR algorithm. PDLAQR1 PDLAQR0 Modified version of ScaLAPACK’s New parallel QR algorithm. current implementation of the parallel QR algorithm. PDLAQR3 PDLAQR5 Aggressive early deflation and Multishift QR iteration based on shift computation. chains of tightly coupled bulges.

  6. Parallel QR Algorithm — 5 / 12 — • Parallel bulge-chasing algorithms (on distributed-memory systems) ScaLAPACK 1.8.0 New algorithm PDLAQR1() PDLAQR5() BLAS-1 BLAS-3 loosely coupled tightly coupled

  7. Parallel QR Algorithm — 6 / 12 — • Local bulge chasing Several chains of tightly coupled bulges are chased simultaneously.

  8. Parallel QR Algorithm — 7 / 12 — • Cross border chasing Odd-numbered windows Even-numbered windows

  9. Parallel QR Algorithm — 8 / 12 — • Aggressive early deflation – Schur decomposition for a smaller matrix Several possible choices: recursion, (modified) ScaLAPACK solver, or even LAPACK solver. Depends on the size of AED window, as well as the number of processors. – We need to take care of eigenvalue reordering ( PBDTRORD ). – Usually the AED phase is slow since the submatrix (AED window) is not large enough. Sometimes we need to redistribute the submatrix to a subset of processors. – We prefer QR sweep since it scales better than AED. So the threshold ( NIBBLE ) for skipping a QR sweep is larger than that used in LAPACK.

  10. Numerical Experiments on Akka — 9 / 12 — 18000 A 16000 × 16000 dense 16000 eigenvalue problem with 100 processors 16755 secs. 14000 H → T = Q T HQ 12000 10000 ScaLAPACK New software 8000 6000 4000 252 secs. 2000 0 100 cores 100 cores

  11. Numerical Experiments on Akka — 10 / 12 — Profile of the total execution time ( A → H → T ) (4000 × 4000 per core) 0 Balancing Hessenberg red. 0.1 QR: AED Schur red. QR: AED reordering 0.2 QR: return to Hess. QR: Sweep - updates 0.3 QR: Sweep - local chase 0.4 0.5 0.6 0.7 0.8 0.9 1 n=4000 n=8000 n=16000 n=32000

  12. Numerical Experiments on Akka — 11 / 12 — A 100 , 000 × 100 , 000 Dense Eigenvalue Problem # Procs 16 × 16 24 × 24 32 × 32 Total Time 5.87 hrs 3.97 hrs 3.07 hrs Balancing 0.24 hrs 0.24 hrs 0.24 hrs Hess. red. 2.92 hrs 1.78 hrs 1.08 hrs QR + AED 2.72 hrs 1.95 hrs 1.75 hrs AED / (QR + AED) 44% 44% 42% shifts per eig 0.30 0.22 0.16

  13. Concluding Remarks — 12 / 12 — • New issues in the parallel QR algorithm – multiple chains of shifts – crossover points for di ff erent algorithms – shifting strategy – data redistribution • The software will be released soon. • Future work faster, faster, and even faster . . . (perhaps less and less energy consumption in the future)

  14. Thank you!

Recommend


More recommend