Adds an integration test for the SPMM (sparse matrix multiplication) kernel, which multiplies a sparse matrix by a dense matrix, resulting in a dense matrix. This is just a simple modification on the existing matrix-vector multiplication kernel.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
typo in title: multilication
mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir | ||
---|---|---|
18–19 | Note that my sparse_matvec example as very specifically picked to work on i32 data with i8 pointers and indices. This is not typical, however. Perhaps you want to simply make this f32 or f64 data and i32 or index pointers and indices? | |
29 | x_ij += a_ik * b_kj is a bit more common it does not matter of course, just curious if you picked this on purpose so that the reduction is in the middle? | |
42 | see above, f32 or f64 is a bit more common for our numerical data |
mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir | ||
---|---|---|
29 | I didn't, I just wasn't aware of the convention! I changed it. |
Ship it, Gus!
Do you have submit permissions already, if not let me know, and I will take care of this one.
Note that my sparse_matvec example as very specifically picked to work on i32 data with i8 pointers and indices. This is not typical, however. Perhaps you want to simply make this f32 or f64 data and i32 or index pointers and indices?