This allow creating a matrix with all elements set to a given value. This is needed to be able to implement a simple dot op.
This is a great addition. We can bring in a scaling op also which scales mmaMatrix by a certain value. Maybe I can take that up.
This should be changed/dropped I think.
This doesn't match with the valid types of mmaMatrixType.
This comment needs to be updated.
It would be nice to be able to handle most of the element-wise ops, ideally we should re-use the std ops but it looks like this would require infrastructure changes to MLIR (https://llvm.discourse.group/t/using-gpu-type-with-standard-ops/3542/2). The best short term solution is probably to add an op taking an attribute like GPU_AllReduceOperationAttr. This is a bit hacky but that would allow us to be able to generate interesting code using the mma ops.
Yes that would be great. Feel free to pick it up. I'll sync up with you when I get close to needing it to make sure our timelines match but right now I can live with what exists now. My next step will most likely be adding transpose support (equivalent to the .col layout in wmma intrinsics).