-
Notifications
You must be signed in to change notification settings - Fork 765
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SYCL][Matrix] Fix checked matrix instructions #13287
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, please pay attention to tests
d09e8c3
to
f16aa85
Compare
Warning comes from unused stride of checked fill API. There should be no such parameter, it also doesn't exist in the spec. I'll remove it in this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
size_t CoordY) { | ||
#if defined(__SYCL_DEVICE_ONLY__) | ||
using storage_element_type = | ||
typename oneapi::detail::jm_type_interpretation_helper_trait< | ||
T>::storage_element_type; | ||
Res.spvm = __spirv_CooperativeMatrixConstructCheckedINTEL< | ||
storage_element_type, T, NumRows, NumCols, | ||
storage_element_type, T, CoordX, CoordY, NumRows, NumCols, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
storage_element_type, T, CoordX, CoordY, NumRows, NumCols, | |
storage_element_type, T, NumRows, NumCols, |
I think it shouldn't be added (these template args correspond to spirv_ops.hpp:48-51)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed, thanks!
size_t CoordY, __spv::MatrixLayout Layout = L, __spv::Scope::Flag Sc = S, | ||
int MemOperand = 0); | ||
extern __DPCPP_SYCL_EXTERNAL void __spirv_CooperativeMatrixStoreCheckedINTEL( | ||
T *Ptr, size_t CoordX, size_t CoordY, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it ok that CoordX, CoordY are size_t? In SPV_INTEL_joint_matrix.asciidoc, there is "X offset must be a scalar 32-bit integer type".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should be int32_t signed, it was fixed in another patch and after rebase it's brough here. Thanks!
There were incorrectly named and had incorrect operands. See intel#12497 Signed-off-by: Sidorov, Dmitry <[email protected]>
Signed-off-by: Sidorov, Dmitry <[email protected]>
Signed-off-by: Sidorov, Dmitry <[email protected]>
Signed-off-by: Sidorov, Dmitry <[email protected]>
3200cd0
to
3d41e97
Compare
Signed-off-by: Sidorov, Dmitry <[email protected]>
Signed-off-by: Sidorov, Dmitry <[email protected]>
@intel/llvm-gatekeepers please help with the merge |
There were incorrectly named and had incorrect operands.
See #12497