[Mlir-commits] [mlir] [mlir][linalg] Introduce transpose semantic to 'linalg.matmul' ops. (PR #104783)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Mon Aug 19 11:17:09 PDT 2024


https://github.com/MaheshRavishankar requested changes to this pull request.

I think we have discussed this before and I dont see a point in adding a matmul operation that is just folding the transpositions. Also this is just for 2D matmuls. What about batch matmuls? I have said previously, we should just have a single `contraction` op that has inedxing maps to represent transpositions and broadcasts and batching. It should be failry simple to have utility methods that give you 
- batching dimension(s)
- M dimension(s)
- N dimension(s)
- K dimension(s)
from the indexing maps and you could easily constraint things for the 3D specific cases. I dont really see the point of adding yet another `matmul` operation that is only generalized along a specific dimension.

Second concern: I think we should try to limit changes to opdsl. Leave the opdsl ops as is, and have a set of named ops that dont conflict but build up towrads V2 of named ops to minimize downstream breakages. At some point in the future (if ever) when all uses have reached a concensus on what to use, then we can deprecate the opdsl path.

https://github.com/llvm/llvm-project/pull/104783


More information about the Mlir-commits mailing list