-
Notifications
You must be signed in to change notification settings - Fork 222
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
support joint matrix prefetch #2212
support joint matrix prefetch #2212
Conversation
…itial introduction of entities related to OpCooperativeMatrixApplyFunctionINTEL
…ooperativeMatrixInvocationInstructionsINTEL capability
not related to the patch |
@@ -0,0 +1,171 @@ | |||
; This is an adapted copy of test/extensions/KHR/SPV_KHR_cooperative_matrix/cooperative_matrix.ll |
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.
Lets name the test appropriately, like cooperative_matrix_prefetch.ll
test/extensions/INTEL/SPV_INTEL_joint_matrix/cooperative_matrix.ll
Outdated
Show resolved
Hide resolved
test/extensions/INTEL/SPV_INTEL_joint_matrix/cooperative_matrix.ll
Outdated
Show resolved
Hide resolved
|
||
; CHECK-LLVM: call spir_func target("spirv.CooperativeMatrixKHR", i32, 3, 12, 12, 3) @_Z26__spirv_CompositeConstructi(i32 0) | ||
; CHECK-LLVM: call spir_func void @_Z38__spirv_CooperativeMatrixPrefetchINTELPU3AS4ciiiiil(ptr addrspace(4) %call.ascast.i66.i, i32 0, i32 0, i32 1, i32 1, i32 0, i64 %_arg_K) | ||
; CHECK-LLVM: call spir_func target("spirv.CooperativeMatrixKHR", i8, 0, 12, 48, 3) @_Z86__spirv_CooperativeMatrixLoadKHR_RPU3AS144__spirv_CooperativeMatrixKHR__char_0_12_48_3PU3AS4clii |
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.
And check for %[[MatrixPtr]] parameter here
virtual SPIRVValue *getOperand(unsigned I) { | ||
return getOpValue(I); | ||
} | ||
virtual SPIRVValue *getOperand(unsigned I) { return getOpValue(I); } |
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.
better not to add non-related changes to the patch
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.
agree, this and following are clang-formats artifacts, I'll revert to the previous state
@@ -400,12 +398,12 @@ class SPIRVMemoryAccess { | |||
} | |||
if (MemoryAccess[0] & MemoryAccessAliasScopeINTELMaskMask) { | |||
assert(MemoryAccess.size() > MemAccessNumParam && | |||
"Aliasing operand is missing"); | |||
"Aliasing operand is missing"); |
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.
same
ILTPrev = LinkageTypeMax - 2, | ||
ILTInternal | ||
}; | ||
enum InternalLinkageType { ILTPrev = LinkageTypeMax - 2, ILTInternal }; |
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.
While this suggesting comes from clang-format, probably enums should be better to be split into multiple lines. I'll add ignore format to this file I guess
Co-authored-by: Dmitry Sidorov <dmitry.sidorov@intel.com>
@MrSidims thanks for suggestions; can you please check them applied |
clang-format is unrelated (and seems like something is no longer working, as it no longer is printing the patch file that should be applied, will take a look tomorrow). |
This PR aims to introduce CooperativeMatrixPrefetchINTEL capability and operation, and make initial introduction of entities in llvm-spirv translator.
This PR aims to introduce CooperativeMatrixPrefetchINTEL capability and operation, and make initial introduction of entities in llvm-spirv translator.
This PR aims to introduce CooperativeMatrixPrefetchINTEL capability and operation, and make initial introduction of entities in llvm-spirv translator. Co-authored-by: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy@users.noreply.github.com>
This PR aims to introduce CooperativeMatrixPrefetchINTEL capability and operation, and make initial introduction of entities in llvm-spirv translator.
This PR aims to introduce CooperativeMatrixPrefetchINTEL capability and operation, and make initial introduction of entities in llvm-spirv translator.