Matrix Multiplication
•Matrix multiplications either with a vector or another matrix are important cases where parallel computing becomes necessary.
•This happens when the size of the matrix becomes very large.
•For a NxN matrix one needs N2  elements.
•For example for a complex matrix in double precision one requires 16 N2   bytes
•    of memory.
•A matrix – vector multiplication takes N multiplications and N – 1 additions while a matrix – matrix multiplication takes N3 multiplications and N3 – N2 additions.
•If the numbers are complex each multiplication 4 real multiplications and two additions while each addition is 2 real additions.
•On a 324 lattice even the simplest algorithm involves 5 billion  double precision multiplications per sweep of the lattice and one needs thousands of sweeps.