Matrix Multiplication
CPS343
Parallel and High Performance Computing
Spring 2013
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 1 / 32
Matrix Multiplication CPS343 Parallel and High Performance - - PowerPoint PPT Presentation
Matrix Multiplication CPS343 Parallel and High Performance Computing Spring 2013 CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 1 / 32 Outline Matrix operations 1 Importance Dense and sparse matrices Matrices and arrays
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 1 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 2 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 3 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 4 / 32
1
2
3
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 5 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 6 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 7 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 8 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 9 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 10 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 11 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 12 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 13 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 14 / 32
1 Row-major vs. column-major storage pattern is language dependent. 2 It is not possible to dynamically allocate two-dimensional arrays in C
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 15 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 16 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 17 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 18 / 32
1 Memory access patterns can have a dramatic impact on performance,
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 18 / 32
1 Memory access patterns can have a dramatic impact on performance,
2 Many important numerical libraries (e.g. LAPACK) are written in
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 18 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 19 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 20 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 21 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 22 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 23 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 24 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 25 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 26 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 27 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 28 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 29 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 30 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 31 / 32
CPS343 (Parallel and HPC) Matrix Multiplication Spring 2013 32 / 32