[SYCL][Doc] Update ExtendedAtomics documentation#1487
Conversation
Several major changes to the extension: - No longer replaces cl::sycl::atomic - Closer alignment with C++20 atomic_ref - Supports additional memory orders Signed-off-by: John Pennycook <john.pennycook@intel.com>
69c745e to
6ccd249
Compare
Signed-off-by: John Pennycook <john.pennycook@intel.com>
6ccd249 to
5c9cd0c
Compare
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Clarify text slightly to distinguish between constructors. Signed-off-by: John Pennycook <john.pennycook@intel.com>
Signed-off-by: John Pennycook <john.pennycook@intel.com>
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Outdated
Show resolved
Hide resolved
sycl/doc/extensions/ExtendedAtomics/SYCL_INTEL_extended_atomics.asciidoc
Show resolved
Hide resolved
Signed-off-by: John Pennycook <john.pennycook@intel.com>
Signed-off-by: John Pennycook <john.pennycook@intel.com>
AlexeySachkov
left a comment
There was a problem hiding this comment.
I don't have any further comments/suggestions, looks good to me.
| }; | ||
|
|
||
| ==== To: | ||
| void atomic_fence(memory_order order): |
There was a problem hiding this comment.
Am I right that the reason why atomic_fence is a free function and not a member of item or nd_item class (like barrier, for example) is that atomic_fence might be needed even in single-threaded application, just to ensure that instructions order will not be changed by compiler and/or HW implementation details - right?
There was a problem hiding this comment.
There are two additional reasons: 1) atomic_thread_fence is a free function in standard C++; and 2) atomic operations with acquire or release semantics behave very similarly to fences, and it seemed weird to limit one to ND-range kernels but not the other.
…duler_docs * origin/sycl: [SYCL][PI][CUDA] Implements get_native interoperability (intel#1332) [SYCL] Fix check-sycl test suite on systems w/o OpenCL (intel#1503) [SYCL][Doc] Update ExtendedAtomics documentation (intel#1487) [SYCL][CUDA] Expose context extended deleters on PI API (intel#1483) [SYCL][NFC] Remove a dropped environment variable from a test (intel#1506) [SYCL] Add opencl-aot to sycl-toolchain target (intel#1504) [SYCL] Allow to run deploy LIT tests from particular directory [SYCL][CUDA] Fix LIT testing with CUDA devices (intel#1300) [SYCL] Remove operator name keywords (intel#1501) [Driver][SYCL] Consider .lo files as static archives (intel#1500) [SYCL-PTX] Update the compiler design to describe the CUDA target (intel#1408) [SYCL] Fix library build on Windows (intel#1499) [SYCL][NFC] Refactor lit.cfg.py (intel#1452) [SYCL] Fixed sub-buffer memory allocation update (intel#1486) [SYCL] Ensure proper definition of spirv builtins for SYCL (intel#1393) [SYCL][CUDA] LIT XFAIL/UNSUPPORTED (intel#1303) [SYCL][Doc] Function-type kernel attribute extension (intel#1494)
…c_abi_checks * origin/sycl: (32 commits) [SYCL] Do not force LLVM_INCLUDE_TESTS variable (intel#1505) [SYCL][NFC] Align nd_item members with constructor initialization list (intel#1521) [SYCL] Move get_info_host implementation to header (intel#1514) [SYCL] Always use dynamic CRT for Unit tests (intel#1515) [SYCL][NFC] Temporarily disable sporadically failing test (intel#1526) [SYCL] Fix inline namespaces (intel#1525) [SYCL] Release notes for March'20 DPCPP implementation update (intel#1511) [SYCL][PI][CUDA] Implements get_native interoperability (intel#1332) [SYCL] Fix check-sycl test suite on systems w/o OpenCL (intel#1503) [SYCL][Doc] Update ExtendedAtomics documentation (intel#1487) [SYCL][CUDA] Expose context extended deleters on PI API (intel#1483) [SYCL][NFC] Remove a dropped environment variable from a test (intel#1506) [SYCL] Add opencl-aot to sycl-toolchain target (intel#1504) [SYCL] Allow to run deploy LIT tests from particular directory [SYCL][CUDA] Fix LIT testing with CUDA devices (intel#1300) [SYCL] Remove operator name keywords (intel#1501) [Driver][SYCL] Consider .lo files as static archives (intel#1500) [SYCL-PTX] Update the compiler design to describe the CUDA target (intel#1408) [SYCL] Fix library build on Windows (intel#1499) [SYCL][NFC] Refactor lit.cfg.py (intel#1452) ...
Several major changes to the extension:
Signed-off-by: John Pennycook john.pennycook@intel.com