charon linear algebra made easy
play

Charon: linear algebra made easy G. M. Crosswhite Department of - PowerPoint PPT Presentation

The Vision Components Charon: linear algebra made easy G. M. Crosswhite Department of Physics University of Washington Thursday, April 16, 2009 G. M. Crosswhite Charon: linear algebra made easy The Vision Components My story Quantum


  1. The Vision Components Charon: linear algebra made easy G. M. Crosswhite Department of Physics University of Washington Thursday, April 16, 2009 G. M. Crosswhite Charon: linear algebra made easy

  2. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  3. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  4. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  5. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  6. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  7. The Vision Components My story Quantum computing! 1 Can we build a reliable memory for quantum bits? 2 Numerical simulation of quantum systems 3 New algorithms for quantum simulations 4 Can they be made to scale? 5 G. M. Crosswhite Charon: linear algebra made easy

  8. The Vision Components Let’s do it! Tools we need: Tensor I/O Tensor contractions Singular Value Decompositions (SVDs) Minimum eigenvalue solving Tools we have: MPI Parallel I/O Global Arrays SciLAPACK ARPACK Problems: Incomplete! Cumbersome to use! Lots of boilerplate and plumbing code needed Synchronous communication model G. M. Crosswhite Charon: linear algebra made easy

  9. The Vision Components Let’s do it! Tools we need: Tensor I/O Tensor contractions Singular Value Decompositions (SVDs) Minimum eigenvalue solving Tools we have: MPI Parallel I/O Global Arrays SciLAPACK ARPACK Problems: Incomplete! Cumbersome to use! Lots of boilerplate and plumbing code needed Synchronous communication model G. M. Crosswhite Charon: linear algebra made easy

  10. The Vision Components Let’s do it! Tools we need: Tensor I/O Tensor contractions Singular Value Decompositions (SVDs) Minimum eigenvalue solving Tools we have: MPI Parallel I/O Global Arrays SciLAPACK ARPACK Problems: Incomplete! Cumbersome to use! Lots of boilerplate and plumbing code needed Synchronous communication model G. M. Crosswhite Charon: linear algebra made easy

  11. The Vision Components Let’s do it! Tools we need: Tensor I/O Tensor contractions Singular Value Decompositions (SVDs) Minimum eigenvalue solving Tools we have: MPI Parallel I/O Global Arrays SciLAPACK ARPACK Problems: Incomplete! Cumbersome to use! Lots of boilerplate and plumbing code needed Synchronous communication model G. M. Crosswhite Charon: linear algebra made easy

  12. The Vision Components The Vision A parallel linear-algebra intensive code should not be more complicated than the algorithm being implemented. G. M. Crosswhite Charon: linear algebra made easy

  13. The Vision Components A Simple Example Read in an array 1 Increment all entries in the array by 1 2 Sum all of the entries in the array 3 Divide all entries in the array by the sum 4 Write out the array 5 G. M. Crosswhite Charon: linear algebra made easy

  14. The Vision Components A Simple Example DistributedArray<float,1> A(16,1<<20); A.loadFrom("infile"); A += 1; float s = A.sum(); A /= s; A.writeTo("outfile"); G. M. Crosswhite Charon: linear algebra made easy

  15. The Vision Components A More Complicated Example Read in matrices A and B 1 Invert A and B 2 Multiply them together to form M 3 Break M apart back into A and B using a SVD 4 Invert A and B again 5 Save A and B 6 G. M. Crosswhite Charon: linear algebra made easy

  16. The Vision Components A More Complicated Example DistributedArray<float,2> A(8,1024,1024), B(8,1024,1024), M(16,1024,1024); DistributedArray<float,1> Sigma(16,1024); A.loadFrom("A.in"); B.loadFrom("B.in"); inv(A); inv(B); matmul(A,B,M); svd(S,A,Sigma,B); inv(A); inv(B); A.writeTo("A.out"); B.writeTo("B.out"); G. M. Crosswhite Charon: linear algebra made easy

  17. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  18. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  19. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  20. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  21. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  22. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  23. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  24. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  25. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  26. The Vision Components Maestro, please! G. M. Crosswhite Charon: linear algebra made easy

  27. The Vision Components The Recipe Ingrediants: Asynchronous communication Master/Slave architecture Explicit ordering and data dependencies The result: Local coordination of task scheduling (Caveat: Central decisions) Automatic parallelization of parallel tasks (Effectively building and walking a DAG.) G. M. Crosswhite Charon: linear algebra made easy

  28. The Vision Components The Recipe Ingrediants: Asynchronous communication Master/Slave architecture Explicit ordering and data dependencies The result: Local coordination of task scheduling (Caveat: Central decisions) Automatic parallelization of parallel tasks (Effectively building and walking a DAG.) G. M. Crosswhite Charon: linear algebra made easy

  29. The Vision Components The Recipe Ingrediants: Asynchronous communication Master/Slave architecture Explicit ordering and data dependencies The result: Local coordination of task scheduling (Caveat: Central decisions) Automatic parallelization of parallel tasks (Effectively building and walking a DAG.) G. M. Crosswhite Charon: linear algebra made easy

  30. The Vision Components The Recipe Ingrediants: Asynchronous communication Master/Slave architecture Explicit ordering and data dependencies The result: Local coordination of task scheduling (Caveat: Central decisions) Automatic parallelization of parallel tasks (Effectively building and walking a DAG.) G. M. Crosswhite Charon: linear algebra made easy

  31. The Vision Components Why Charm++? Asynchronous communication model AMPI provides “virtualization” MPI libraries Emphasis on higher-level programming G. M. Crosswhite Charon: linear algebra made easy

  32. The Vision Components Why Charm++? Asynchronous communication model AMPI provides “virtualization” MPI libraries Emphasis on higher-level programming G. M. Crosswhite Charon: linear algebra made easy

  33. The Vision Components Why Charm++? Asynchronous communication model AMPI provides “virtualization” MPI libraries Emphasis on higher-level programming G. M. Crosswhite Charon: linear algebra made easy

  34. The Vision Components Why Charm++? Asynchronous communication model AMPI provides “virtualization” MPI libraries Emphasis on higher-level programming G. M. Crosswhite Charon: linear algebra made easy

  35. The Vision Components The Components Array Master/Slave Controller Distributed Array Block-cyclic Array Operations AMPI Master/Slave Controller BLACS Grid Master/Slave (interface to BLACS) Block IO Master/Slave (interface to ROMIO) Matrix multiplier G. M. Crosswhite Charon: linear algebra made easy

  36. The Vision Components The Components Array Master/Slave Controller Distributed Array Block-cyclic Array Operations AMPI Master/Slave Controller BLACS Grid Master/Slave (interface to BLACS) Block IO Master/Slave (interface to ROMIO) Matrix multiplier G. M. Crosswhite Charon: linear algebra made easy

  37. The Vision Components The Components Array Master/Slave Controller Distributed Array Block-cyclic Array Operations AMPI Master/Slave Controller BLACS Grid Master/Slave (interface to BLACS) Block IO Master/Slave (interface to ROMIO) Matrix multiplier G. M. Crosswhite Charon: linear algebra made easy

  38. The Vision Components The Components Array Master/Slave Controller Distributed Array Block-cyclic Array Operations AMPI Master/Slave Controller BLACS Grid Master/Slave (interface to BLACS) Block IO Master/Slave (interface to ROMIO) Matrix multiplier G. M. Crosswhite Charon: linear algebra made easy

Recommend


More recommend