cl::sycl::nd_item< dimensions > Class Template Reference
The cl::sycl::nd_item object is a container for all information about a work-item. More...
#include <base.h>
Public Member Functions | |
nd_item (const nd_item &rhs)=default | |
copy constructor is public More... | |
template<int dimensions2> | |
nd_item (const nd_item< dimensions2 > &rhs) | |
Copy Constructor from nd_item<dims> More... | |
nd_item (const detail::nd_item_base &i) | |
experimental::sub_group | get_sub_group () const |
Access to the subgroup functionality. More... | |
void | sub_group_barrier (access::fence_space accessSpace=access::fence_space::global_and_local) const |
Access to subgroup barrier. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_global_id(unsigned) instead.") size_t get_global(unsigned int dimension) const | |
Returns the global id for a specific dimension. More... | |
size_t | get_global_id (unsigned int dimension) const |
Returns the global id for a specific dimension. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_global_id() instead.") id< dimensions > get_global() const | |
Return the global id for all dimension. More... | |
id< dimensions > | get_global_id () const |
Return the global id for all dimension. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_local_id(unsigned) instead.") size_t get_local(unsigned int dimension) const | |
Returns the local id for a specific dimension. More... | |
size_t | get_local_id (unsigned int dimension) const |
Returns the local id for a specific dimension. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_local_id() instead.") id< dimensions > get_local() const | |
Return the local id for all dimension. More... | |
id< dimensions > | get_local_id () const |
Return the local id for all dimension. More... | |
size_t | get_global_range (int dimension) const |
Get the global range for a specified dimension. More... | |
range< dimensions > | get_global_range () const |
Get the global range of the enqueued nd_range. More... | |
size_t | get_local_range (int dimension) const |
Get the local range for a specified dimension. More... | |
range< dimensions > | get_local_range () const |
Get the local range of the enqueued nd_range. More... | |
size_t | get_group (unsigned int dim) const |
Returns the current group id in a given dimension. More... | |
group< dimensions > | get_group () const |
Returns the group. More... | |
id< dimensions > | get_offset () const |
Get the offset of the enqueued nd_range. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_group_range() instead.") range< dimensions > get_num_groups() const | |
Returns the group range of the enqueued nd_range. More... | |
range< dimensions > | get_group_range () const |
Returns the group range of the enqueued nd_range. More... | |
COMPUTECPP_DEPRECATED_BY_SYCL_VER (201703, "Use nd_item::get_group_range(unsigned) instead.") size_t get_num_groups(int dimension) const | |
Returns the group range of the enqueued nd_range for a specific dimension. More... | |
size_t | get_group_range (int dimension) const |
Returns the group range of the enqueued nd_range for a specific dimension. More... | |
size_t | get_group_linear_id () const |
Returns the group linear id. More... | |
nd_range< dimensions > | get_nd_range () const |
Returns the enqueued nd_range. More... | |
template<typename dataT > | |
device_event | async_work_group_copy (local_ptr< dataT > dest, global_ptr< dataT > src, size_t numElements, size_t srcStride=1) const |
Asynchronous work group copy from a local pointer to global. More... | |
template<typename dataT > | |
device_event | async_work_group_copy (global_ptr< dataT > dest, local_ptr< dataT > src, size_t numElements, size_t destStride=1) const |
Asynchronous work group copy from a local pointer to global. More... | |
COMPUTECPP_DEPRECATED_API ("Deprecated Codeplay extension, use the codeplay_await_dma_transfer free " "function instead.") void codeplay_await_dma_transfer() const | |
Waits until codeplay_begin_dma_transfer completes. More... | |
template<class dataT , int sourceDim, int destinationDim, access::mode sourceMode, access::placeholder isPlaceholderSrc> | |
COMPUTECPP_DEPRECATED_API ("Deprecated Codeplay extension, use the codeplay_begin_dma_transfer free " "function instead.") void codeplay_begin_dma_transfer(const accessor< dataT | |
Performs an asynchronous copy from global memory plane to subgroup local memory. More... | |
detail::assert_plane_range () | |
detail::assert_read_mode () | |
COMPUTECPP_NOT_IMPLEMENTED ("ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host.") | |
template<class dataT , int dim, access::mode sourceMode, access::placeholder isPlaceholderSrc> | |
COMPUTECPP_DEPRECATED_API ("Deprecated Codeplay extension, use the codeplay_begin_dma_transfer free " "function instead.") void codeplay_begin_dma_transfer(const accessor< dataT | |
Performs an asynchronous copy from a global memory plane to subgroup local memory. More... | |
detail::assert_read_mode () | |
COMPUTECPP_NOT_IMPLEMENTED ("ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host.") | |
template<class dataT , int sourceDim, int destinationDim, access::mode destinationMode, access::placeholder isPlaceholderDst> | |
COMPUTECPP_DEPRECATED_API ("Deprecated Codeplay extension, use the codeplay_begin_dma_transfer free " "function instead.") void codeplay_begin_dma_transfer(const accessor< dataT | |
Performs an asynchronous copy from subgroup local memory to a global memory plane. More... | |
detail::assert_plane_range () | |
detail::assert_write_mode () | |
COMPUTECPP_NOT_IMPLEMENTED ("ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host.") | |
template<class dataT , int dim, access::mode destinationMode, access::placeholder isPlaceholderDst> | |
COMPUTECPP_DEPRECATED_API ("Deprecated Codeplay extension, use the codeplay_begin_dma_transfer free " "function instead.") void codeplay_begin_dma_transfer(const multi_ptr< dataT | |
Performs an asynchronous copy from subgroup local memory to a global memory plane. More... | |
detail::assert_write_mode () | |
COMPUTECPP_NOT_IMPLEMENTED ("ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host.") | |
template<typename... eventTN> | |
void | wait_for (eventTN... events) const |
Waits on each given device_event. More... | |
Protected Types | |
using | base_t = detail::nd_item_base |
Protected Member Functions | |
nd_item ()=delete | |
This constructor should not be called. More... | |
item< dimensions > | get_global_item () const |
Get an item object embedding global information from this nd_range. More... | |
item< dimensions > | get_local_item () const |
Get an item object embedding local information from this nd_range. More... | |
id< dimensions > | get_group_id () const |
Retrieves the group ID. More... | |
bool | is_zero_id () const |
Checks if the ID of this nd_item is all zeros. More... | |
Friends | |
bool | operator== (const nd_item &lhs, const nd_item &rhs) |
Equality operator. More... | |
bool | operator!= (const nd_item &lhs, const nd_item &rhs) |
Non-equality operator. More... | |
Detailed Description
template<int dimensions = 1>
class cl::sycl::nd_item< dimensions >
The cl::sycl::nd_item object is a container for all information about a work-item.
The cl::sycl::nd_item object is used within the handler::parallel_for functions. The cl::sycl::item object can return information about the local and global sizes of an enqueued nd_range as well as the local and global ids of the work item.
Member Typedef Documentation
◆ base_t
|
protected |
Constructor & Destructor Documentation
◆ nd_item() [1/4]
|
protecteddelete |
This constructor should not be called.
nd_item has to be constructed from the runtime.
- Warning
- Cannot be used (deleted).
◆ nd_item() [2/4]
|
default |
copy constructor is public
◆ nd_item() [3/4]
|
inline |
◆ nd_item() [4/4]
|
inline |
Member Function Documentation
◆ async_work_group_copy() [1/2]
|
inline |
Asynchronous work group copy from a local pointer to global.
- Template Parameters
-
dataT Data type of the pointer
- Parameters
-
dest Pointer to the destination in local memory src Pointer to the source in global memory numElements Number of elements to copy destStride Stride in the origin
- Todo:
- Use builtins
◆ async_work_group_copy() [2/2]
|
inline |
Asynchronous work group copy from a local pointer to global.
- Template Parameters
-
dataT Data type of the pointer
- Parameters
-
dest Pointer to the destination in global memory src Pointer to the source in local memory numElements Number of elements to copy destStride Stride in the destination
- Todo:
- Use builtins
◆ COMPUTECPP_DEPRECATED_API() [1/5]
|
inline |
◆ COMPUTECPP_DEPRECATED_API() [2/5]
cl::sycl::nd_item< dimensions >::COMPUTECPP_DEPRECATED_API | ( | "Deprecated Codeplay | extension, |
use the codeplay_begin_dma_transfer free " "function instead." | |||
) | const |
Performs an asynchronous copy from global memory plane to subgroup local memory.
- Parameters
-
source The region of memory to copy data from. destination The region of memory to write the data to. copyBounds The shape of the region. offset The offset into the planar region of memory. stride The subgroup local memory stride.
◆ COMPUTECPP_DEPRECATED_API() [3/5]
cl::sycl::nd_item< dimensions >::COMPUTECPP_DEPRECATED_API | ( | "Deprecated Codeplay | extension, |
use the codeplay_begin_dma_transfer free " "function instead." | |||
) | const |
Performs an asynchronous copy from a global memory plane to subgroup local memory.
- Parameters
-
source The region of memory to copy data from. destination The region of memory to write the data to. copyBounds The shape of the region. offset The offset into the planar region of memory. stride The subgroup local memory stride.
◆ COMPUTECPP_DEPRECATED_API() [4/5]
cl::sycl::nd_item< dimensions >::COMPUTECPP_DEPRECATED_API | ( | "Deprecated Codeplay | extension, |
use the codeplay_begin_dma_transfer free " "function instead." | |||
) | const |
Performs an asynchronous copy from subgroup local memory to a global memory plane.
- Parameters
-
source The region of memory to copy data from. destination The region of memory to write the data to. copyBounds The shape of the region. offset The offset into the planar region of memory. stride The subgroup local memory stride.
◆ COMPUTECPP_DEPRECATED_API() [5/5]
cl::sycl::nd_item< dimensions >::COMPUTECPP_DEPRECATED_API | ( | "Deprecated Codeplay | extension, |
use the codeplay_begin_dma_transfer free " "function instead." | |||
) | const |
Performs an asynchronous copy from subgroup local memory to a global memory plane.
- Parameters
-
source The region of memory to copy data from. destination The region of memory to write the data to. copyBounds The shape of the region. offset The offset into the planar region of memory. stride The subgroup local memory stride.
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [1/6]
|
inline |
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [2/6]
|
inline |
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [3/6]
|
inline |
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [4/6]
|
inline |
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [5/6]
|
inline |
◆ COMPUTECPP_DEPRECATED_BY_SYCL_VER() [6/6]
|
inline |
◆ COMPUTECPP_NOT_IMPLEMENTED() [1/4]
cl::sycl::nd_item< dimensions >::COMPUTECPP_NOT_IMPLEMENTED | ( | "ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host." | ) |
◆ COMPUTECPP_NOT_IMPLEMENTED() [2/4]
cl::sycl::nd_item< dimensions >::COMPUTECPP_NOT_IMPLEMENTED | ( | "ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host." | ) |
◆ COMPUTECPP_NOT_IMPLEMENTED() [3/4]
cl::sycl::nd_item< dimensions >::COMPUTECPP_NOT_IMPLEMENTED | ( | "ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host." | ) |
◆ COMPUTECPP_NOT_IMPLEMENTED() [4/4]
cl::sycl::nd_item< dimensions >::COMPUTECPP_NOT_IMPLEMENTED | ( | "ComputeCpp has not yet implemented codeplay_begin_dma_transfer " "for host." | ) |
◆ detail::assert_plane_range() [1/2]
cl::sycl::nd_item< dimensions >::detail::assert_plane_range | ( | ) |
◆ detail::assert_plane_range() [2/2]
cl::sycl::nd_item< dimensions >::detail::assert_plane_range | ( | ) |
◆ detail::assert_read_mode() [1/2]
cl::sycl::nd_item< dimensions >::detail::assert_read_mode | ( | ) |
◆ detail::assert_read_mode() [2/2]
cl::sycl::nd_item< dimensions >::detail::assert_read_mode | ( | ) |
◆ detail::assert_write_mode() [1/2]
cl::sycl::nd_item< dimensions >::detail::assert_write_mode | ( | ) |
◆ detail::assert_write_mode() [2/2]
cl::sycl::nd_item< dimensions >::detail::assert_write_mode | ( | ) |
◆ get_global_id() [1/2]
|
inline |
◆ get_global_id() [2/2]
|
inline |
◆ get_global_item()
|
inlineprotected |
◆ get_global_range() [1/2]
|
inline |
◆ get_global_range() [2/2]
|
inline |
◆ get_group() [1/2]
|
inline |
◆ get_group() [2/2]
|
inline |
◆ get_group_id()
|
inlineprotected |
◆ get_group_linear_id()
|
inline |
◆ get_group_range() [1/2]
|
inline |
◆ get_group_range() [2/2]
|
inline |
◆ get_local_id() [1/2]
|
inline |
◆ get_local_id() [2/2]
|
inline |
◆ get_local_item()
|
inlineprotected |
◆ get_local_range() [1/2]
|
inline |
◆ get_local_range() [2/2]
|
inline |
◆ get_nd_range()
|
inline |
◆ get_offset()
|
inline |
◆ get_sub_group()
|
inline |
◆ is_zero_id()
|
inlineprotected |
◆ sub_group_barrier()
|
inline |
◆ wait_for()
|
inline |
Waits on each given device_event.
- Template Parameters
-
eventTN Pack of device_event types
- Parameters
-
events Pack of device_events
Friends And Related Function Documentation
◆ operator!=
◆ operator==
Member Data Documentation
◆ COMPUTECPP_ACCESS_TARGET_DEVICE
cl::sycl::nd_item< dimensions >::COMPUTECPP_ACCESS_TARGET_DEVICE |
◆ copyBounds [1/5]
void cl::sycl::nd_item< dimensions >::copyBounds |
◆ copyBounds [2/5]
void cl::sycl::nd_item< dimensions >::copyBounds |
◆ copyBounds [3/5]
isPlaceholderSrc const multi_ptr<dataT, access::address_space::subgroup_local_space> const range<2> cl::sycl::nd_item< dimensions >::copyBounds |
◆ copyBounds [4/5]
access::target::subgroup_local const accessor<dataT, destinationDim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> cl::sycl::nd_item< dimensions >::copyBounds |
◆ copyBounds [5/5]
access::address_space::subgroup_local_space const accessor<dataT, dim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> cl::sycl::nd_item< dimensions >::copyBounds |
◆ destination [1/5]
void cl::sycl::nd_item< dimensions >::destination |
◆ destination [2/5]
void cl::sycl::nd_item< dimensions >::destination |
◆ destination [3/5]
isPlaceholderSrc const multi_ptr<dataT, access::address_space::subgroup_local_space> cl::sycl::nd_item< dimensions >::destination |
◆ destination [4/5]
access::target::subgroup_local const accessor<dataT, destinationDim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst>& cl::sycl::nd_item< dimensions >::destination |
◆ destination [5/5]
access::address_space::subgroup_local_space const accessor<dataT, dim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst>& cl::sycl::nd_item< dimensions >::destination |
◆ dim
cl::sycl::nd_item< dimensions >::dim |
◆ offset [1/5]
void cl::sycl::nd_item< dimensions >::offset |
◆ offset [2/5]
void cl::sycl::nd_item< dimensions >::offset |
◆ offset [3/5]
isPlaceholderSrc const multi_ptr<dataT, access::address_space::subgroup_local_space> const range<2> size_t cl::sycl::nd_item< dimensions >::offset |
◆ offset [4/5]
access::target::subgroup_local const accessor<dataT, destinationDim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> size_t cl::sycl::nd_item< dimensions >::offset |
◆ offset [5/5]
access::address_space::subgroup_local_space const accessor<dataT, dim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> size_t cl::sycl::nd_item< dimensions >::offset |
◆ source [1/4]
void cl::sycl::nd_item< dimensions >::source |
◆ source [2/4]
void cl::sycl::nd_item< dimensions >::source |
◆ source [3/4]
access::target::subgroup_local& cl::sycl::nd_item< dimensions >::source |
◆ source [4/4]
access::address_space::subgroup_local_space cl::sycl::nd_item< dimensions >::source |
◆ sourceDim
cl::sycl::nd_item< dimensions >::sourceDim |
◆ sourceMode
cl::sycl::nd_item< dimensions >::sourceMode |
◆ stride [1/5]
void cl::sycl::nd_item< dimensions >::stride |
◆ stride [2/5]
void cl::sycl::nd_item< dimensions >::stride |
◆ stride [3/5]
isPlaceholderSrc const multi_ptr<dataT, access::address_space::subgroup_local_space> const range<2> size_t size_t cl::sycl::nd_item< dimensions >::stride |
◆ stride [4/5]
access::target::subgroup_local const accessor<dataT, destinationDim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> size_t size_t cl::sycl::nd_item< dimensions >::stride |
◆ stride [5/5]
access::address_space::subgroup_local_space const accessor<dataT, dim, destinationMode, COMPUTECPP_ACCESS_TARGET_DEVICE, isPlaceholderDst> const range<2> size_t size_t cl::sycl::nd_item< dimensions >::stride |
The documentation for this class was generated from the following files: