18namespace shamsys::syclhelper::mock {
21 sycl::buffer<T> mock_buffer(
u32 len, std::mt19937 &eng) {
22 std::uniform_real_distribution<f64> distval(-1.0F, 1.0F);
24 sycl::buffer<T> buf(len);
27 sycl::host_accessor acc{buf};
28 for (
u32 i = 0; i < len; i++) {
29 acc[i] = next_obj<T>(eng, distval);
33 return std::move(buf);
36 template sycl::buffer<f32> mock_buffer<f32>(
u32 len, std::mt19937 &eng);
37 template sycl::buffer<f32_2> mock_buffer<f32_2>(
u32 len, std::mt19937 &eng);
38 template sycl::buffer<f32_3> mock_buffer<f32_3>(
u32 len, std::mt19937 &eng);
39 template sycl::buffer<f32_4> mock_buffer<f32_4>(
u32 len, std::mt19937 &eng);
40 template sycl::buffer<f32_8> mock_buffer<f32_8>(
u32 len, std::mt19937 &eng);
41 template sycl::buffer<f32_16> mock_buffer<f32_16>(
u32 len, std::mt19937 &eng);
42 template sycl::buffer<f64> mock_buffer<f64>(
u32 len, std::mt19937 &eng);
43 template sycl::buffer<f64_2> mock_buffer<f64_2>(
u32 len, std::mt19937 &eng);
44 template sycl::buffer<f64_3> mock_buffer<f64_3>(
u32 len, std::mt19937 &eng);
45 template sycl::buffer<f64_4> mock_buffer<f64_4>(
u32 len, std::mt19937 &eng);
46 template sycl::buffer<f64_8> mock_buffer<f64_8>(
u32 len, std::mt19937 &eng);
47 template sycl::buffer<f64_16> mock_buffer<f64_16>(
u32 len, std::mt19937 &eng);
48 template sycl::buffer<u32> mock_buffer<u32>(
u32 len, std::mt19937 &eng);
49 template sycl::buffer<u64> mock_buffer<u64>(
u32 len, std::mt19937 &eng);
std::uint32_t u32
32 bit unsigned integer