Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| mlir/test/Dialect/SparseTensor/sampled_dense_dense_matmul_with_spy.mlir | ||
|---|---|---|
| 82 ↗ | (On Diff #531406) | we should avoid the double reduction and try to get something like this to work (I think bringing in outside values into block should work) %result = linalg.generic #trait_sampled_dense_dense   ins(%argA, %argB: tensor<8x8xf64>, tensor<8x8xf64>)
  outs(%argS: tensor<8x8xf64, #SM>) {
    ^bb(%a: f64, %b: f64, %x: f64):
       %sel = sparse_tensor.unary %x : f64 to f64
         present={
            ^bb0(%p: f64):
              sparse_tensor.yield %f1 : f64
         }
         absent={}
       %mul = arith.mulf %a, %b :  f64
       %2 = sparse_tensor.reduce %x, %sel, %f0 : f64 {
          ^bb0(%p: f64, %q: f64):
            %add = arith.addf %p, %mul : f64
            sparse_tensor.yield %add : f64
        }
       linalg.yield %2 : f64
} -> tensor<8x8xf64, #SM> | 
typo: Optional