41 constexpr
dim3(
unsigned int x = 1,
unsigned int y = 1,
unsigned int z = 1)
44 constexpr
size_t size()
const {
return x *
y *
z; }
49 throw std::invalid_argument(
50 "Attempting to convert a 3D dim3 into sycl::range<2>");
55 throw std::invalid_argument(
56 "Attempting to convert a 2D or 3D dim3 into sycl::range<1>");
62 return dim3{a.x * b.x, a.y * b.y, a.z * b.z};
66 return dim3{a.x + b.x, a.y + b.y, a.z + b.z};
70 return dim3{a.x - b.x, a.y - b.y, a.z - b.z};
Defines the iteration domain of either a single work-group in a parallel dispatch,...
dim3(const sycl::range< 2 > &r)
dim3(const sycl::range< 1 > &r)
constexpr size_t size() const
dim3(const sycl::range< 3 > &r)
constexpr dim3(unsigned int x=1, unsigned int y=1, unsigned int z=1)
dim3 operator-(const dim3 &a, const dim3 &b)
dim3 operator+(const dim3 &a, const dim3 &b)
dim3 operator*(const dim3 &a, const dim3 &b)