class group
Declaration
template <int Dims = 1>
class group { /* full declaration omitted */ };
Template Parameters
- int Dims = 1
Member Variables
- static const int dimensions = Dims
- static const memory_scope fence_scope = memory_scope_work_group
- sycl::group<sycl_dims> m_sycl_group
- id<Dims> m_group_id
- range<Dims> m_group_range
- static const int sycl_dims = std::max(1, Dims)
Member Aliases
- using id_type = id<Dims>;
- using linear_id_type = size_t;
- using range_type = range<Dims>;
Member Function Overview
- template <typename T>
async_work_group_copy(decorated_global_ptr<T> dest, decorated_local_ptr<T> src, size_t num_elements, size_t dest_stride) const → sycl::device_event - template <typename T>
async_work_group_copy(decorated_local_ptr<T> dest, decorated_global_ptr<T> src, size_t num_elements, size_t src_stride) const → sycl::device_event - template <typename T>
async_work_group_copy(decorated_global_ptr<T> dest, decorated_local_ptr<T> src, size_t num_elements) const → sycl::device_event - template <typename T>
async_work_group_copy(decorated_local_ptr<T> dest, decorated_global_ptr<T> src, size_t num_elements) const → sycl::device_event - get_group_id(int dimension) const → size_t
- get_group_id() const → id<Dims>
- get_group_linear_id() const → size_t
- get_group_linear_range() const → size_t
- get_group_range(int dimension) const → size_t
- get_group_range() const → range<Dims>
- get_local_id(int dimension) const → size_t
- get_local_id() const → id<Dims>
- get_local_linear_id() const → size_t
- get_local_linear_range() const → size_t
- get_local_range(int dimension) const → size_t
- get_local_range() const → range<Dims>
- get_max_local_range() const → range<Dims>
- leader() const → bool
- operator[](int dimension) const → size_t
- template <typename... DeviceEvents>
wait_for(DeviceEvents... events) const → void - group(const sycl::group<sycl_dims> & sycl_group, const id<Dims> & group_id, const range<Dims> & group_range) → explicit
Member Functions
¶template <typename T>
sycl::device_event async_work_group_copy(
decorated_global_ptr<T> dest,
decorated_local_ptr<T> src,
size_t num_elements,
size_t dest_stride) const
Parameters
- decorated_global_ptr<T> dest
- decorated_local_ptr<T> src
- size_t num_elements
- size_t dest_stride
¶template <typename T>
sycl::device_event async_work_group_copy(
decorated_local_ptr<T> dest,
decorated_global_ptr<T> src,
size_t num_elements,
size_t src_stride) const
Parameters
- decorated_local_ptr<T> dest
- decorated_global_ptr<T> src
- size_t num_elements
- size_t src_stride
¶template <typename T>
sycl::device_event async_work_group_copy(
decorated_global_ptr<T> dest,
decorated_local_ptr<T> src,
size_t num_elements) const
Parameters
- decorated_global_ptr<T> dest
- decorated_local_ptr<T> src
- size_t num_elements
¶template <typename T>
sycl::device_event async_work_group_copy(
decorated_local_ptr<T> dest,
decorated_global_ptr<T> src,
size_t num_elements) const
Parameters
- decorated_local_ptr<T> dest
- decorated_global_ptr<T> src
- size_t num_elements
¶size_t get_group_id(int dimension) const
¶id<Dims> get_group_id() const
¶size_t get_group_linear_id() const
¶size_t get_group_linear_range() const
¶size_t get_group_range(int dimension) const
¶range<Dims> get_group_range() const
¶size_t get_local_id(int dimension) const
¶id<Dims> get_local_id() const
¶size_t get_local_linear_id() const
¶size_t get_local_linear_range() const
¶size_t get_local_range(int dimension) const
¶range<Dims> get_local_range() const
¶range<Dims> get_max_local_range() const
¶size_t operator[](int dimension) const
¶template <typename... DeviceEvents>
void wait_for(DeviceEvents... events) const
Template Parameters
- DeviceEvents
Parameters
- DeviceEvents... events
¶explicit group(
const sycl::group<sycl_dims>& sycl_group,
const id<Dims>& group_id,
const range<Dims>& group_range)
Parameters
- const sycl::group<sycl_dims>& sycl_group
- const id<Dims>& group_id
- const range<Dims>& group_range