58 template<
class Tkey,
class Tval>
60 sycl::queue &q, sycl::buffer<Tkey> &buf_key, sycl::buffer<Tval> &buf_values,
u32 len);
87 template<
class Tkey,
class Tval>
89 const sham::DeviceScheduler_ptr &sched,
122 template<
class Tkey,
class Tval>
124 sycl::queue &q, sycl::buffer<Tkey> &buf_key, sycl::buffer<Tval> &buf_values,
u32 len) {
158 template<
class Tkey,
class Tval>
160 const sham::DeviceScheduler_ptr &sched,
std::uint32_t u32
32 bit unsigned integer
A buffer allocated in USM (Unified Shared Memory)
This header file contains utility functions related to exception handling in the code.
namespace for primitive algorithm (e.g. sort, scan, reductions, ...)
void sort_by_key_pow2_len(sycl::queue &q, sycl::buffer< Tkey > &buf_key, sycl::buffer< Tval > &buf_values, u32 len)
Sort key-value pairs using sycl::buffers (power-of-2 optimized)
void sort_by_key(sycl::queue &q, sycl::buffer< Tkey > &buf_key, sycl::buffer< Tval > &buf_values, u32 len)
Sort key-value pairs using sycl::buffers.
constexpr bool is_pow_of_two(T v) noexcept
determine if v is a power of two and check if v==0 Source : https://graphics.stanford....
void throw_with_loc(std::string message, SourceLocation loc=SourceLocation{})
Throw an exception and append the source location to it.