8. Matrix Multiplication
• Naïve algorithm has complexity O(n3)
• Order of memory access has major effect on speed
• Why write code when you don’t have to
9. ALSO THIS CODE
for (var r = 0; r < n; r++) {
for (var c = 0; c < m; c++) {
for (var i = 0; i < m; i++) {
v3[c*m + r] += v1[c*m + i] * v2[i*n + r];
}
}
}
for (auto r = 0; r < n; ++r) {
for (auto c = 0; c < m; ++c) {
for (auto i = 0; i < m; ++i) {
v3[r*m + c] += v1[r*m + i] * v2[i*n + c];
}
}
}