summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/main.rs b/src/main.rs
index 31d810b..edd202d 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1,9 +1,10 @@
use mdarray::{view, tensor, DSlice, Expression};
+// Indexing convention: C_ij <- A_ik * B_kj
fn matmul(a: &DSlice<f64, 2>, b: &DSlice<f64, 2>, c: &mut DSlice<f64, 2>) {
- for (mut cj, bj) in c.cols_mut().zip(b.cols()) {
- for (ak, bkj) in a.cols().zip(bj) {
- for (cij, aik) in cj.expr_mut().zip(ak) {
+ for (mut ci, ai) in c.rows_mut().zip(a.rows()) {
+ for (aik, bk) in ai.zip(b.rows()) {
+ for (cij, bkj) in ci.expr_mut().zip(bk) {
*cij = aik.mul_add(*bkj, *cij);
}
}