-
Notifications
You must be signed in to change notification settings - Fork 798
Description
Hello, I am trying to add support for joint matrix as specified in this doc in MLIR
https://github.com/intel/llvm/blob/c2f8602c843d2ba87dc1c9057f1422f23a77ed66/sycl/doc/design/spirv-extensions/SPV_INTEL_joint_matrix.asciidoc
I did have some questions about the ops
-
The spec does not mention what storage class the pointer can support, we were thinking of allowing, Workgroup and CrossWorkgroup, is that right and should any other be allowed?
-
If you look at the cooperativematrix side https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/master/extensions/NV/SPV_NV_cooperative_matrix.html
in "3.32.13 Arithmetic Instructions"
there is "Allow cooperative matrix types for the following instructions (if the component type is appropriate): OpSNegate, OpFNegate, OpIAdd, OpFAdd, OpISub, OpFSub, OpFDiv, OpSDiv, and OpUDiv. Allow cooperative matrix types for OpMatrixTimesScalar."
should this true for the joint matrix ops too?
Here is a WIP patch https://reviews.llvm.org/D131586 , if any contributors have feedback
cc @MrSidims @jcranmer-intel (tagging you as I see you guys actively working on this on the open source side)