-
Notifications
You must be signed in to change notification settings - Fork 803
[SPIR-V][Doc] add draft SPIR-V extension for 16-bit atomics #20009
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
base: sycl
Are you sure you want to change the base?
Conversation
Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3344) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> --------- Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3345) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> --------- Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3346) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> --------- Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3347) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> --------- Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3348) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) (#3349) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
|
We may want to consider broadening this extension to support 16-bit atomics more generally vs. just bfloat16 atomics. Here's what this might look like:
Just like in this current draft for bfloat16 atomics, I don't think we would need any new instructions, and would just support 16-bit types for existing atomic instructions. |
…on (KhronosGroup#3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (#3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
…on (KhronosGroup#3343) Spec is available here: intel/llvm#20009 Author: "Ratajewski, Andrzej" <[email protected]> Signed-off-by: Sidorov, Dmitry <[email protected]>
|
I've assigned enums for the new SPIR-V instructions and the new OpenCL queries. @intel/dpcpp-spirv-doc-reviewers I believe this is ready for final review and merging. |
…tomics` extension (#166257) This enables support for atomic RMW ops (add, sub, min and max to be precise) with `bfloat16` operands, via the [SPV_INTEL_16bit_atomics extension](intel/llvm#20009). It's logically a successor to #166031 (I should've used a stack), but I'm putting it up for early review. --------- Co-authored-by: Matt Arsenault <[email protected]>
…TEL_16bit_atomics` extension (#166257) This enables support for atomic RMW ops (add, sub, min and max to be precise) with `bfloat16` operands, via the [SPV_INTEL_16bit_atomics extension](intel/llvm#20009). It's logically a successor to #166031 (I should've used a stack), but I'm putting it up for early review. --------- Co-authored-by: Matt Arsenault <[email protected]>
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
…3424) This continues KhronosGroup#3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009 note for llvm14 branch: removed atomicrmw_fminfmax.ll test as it seems like llvm14 don't have atomicrmw fmin
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009
This continues #3343 and reflects specification update, including extension renaming. Specification: intel/llvm#20009 note for llvm14 branch: removed atomicrmw_fminfmax.ll test as it seems like llvm14 don't have atomicrmw fmin
This continues #3343 and reflects specification update, including extension renaming. Specification: #20009 Original commit: KhronosGroup/SPIRV-LLVM-Translator@2f2a95e686e72ec
Adds the proposed SPV_INTEL_shader_atomic_bfloat16 extension specification, which extends the floating-point atomic support in SPIR-V to support floating-point atomic addition, minimum, and maximum on 16-bit bfloat16 floating-point numbers in memory.