Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
SyclHelper.hpp File Reference
#include "shambackends/sycl.hpp"
#include "shambackends/typeAliasVec.hpp"
#include <ostream>
#include <random>
+ Include dependency graph for SyclHelper.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  shamsys::syclhelper::get_base_sycl_type< T >
 
struct  shamsys::syclhelper::get_base_sycl_type< sycl::vec< T, N > >
 

Namespaces

namespace  shamsys
 namespace for the system handling
 

Functions

template<class T >
sycl::buffer< T > shamsys::syclhelper::mock::mock_buffer (u32 len, std::mt19937 &eng)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, T a)
 
template<class T >
shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, sycl::vec< T, 2 > a)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, sycl::vec< T, 3 > a)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, sycl::vec< T, 4 > a)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, sycl::vec< T, 8 > a)
 
template<class T >
void shamsys::syclhelper::print_vec (std::ostream &ostream, sycl::vec< T, 16 > a)
 
template<>
i64 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
i32 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
i16 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
i8 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
u64 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
u32 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
u16 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
u8 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
f32 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
f64 shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f32, 2 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f32, 3 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f32, 4 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f32, 8 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f32, 16 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f64, 2 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f64, 3 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f64, 4 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f64, 8 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< f64, 16 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< u16, 3 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 
template<>
sycl::vec< u32, 3 > shamsys::syclhelper::next_obj (std::mt19937 &eng, std::uniform_real_distribution< f64 > &distval)
 

Detailed Description

Author
Timothée David–Cléris (tim.s.nosp@m.hamr.nosp@m.ock@p.nosp@m.roto.nosp@m.n.me)

Definition in file SyclHelper.hpp.

Function Documentation

◆ mock_buffer()

template<class T >
sycl::buffer< T > shamsys::syclhelper::mock::mock_buffer ( u32  len,
std::mt19937 &  eng 
)

Definition at line 21 of file SyclHelper.cpp.

◆ next_obj() [1/22]

template<>
i64 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 73 of file SyclHelper.hpp.

◆ next_obj() [2/22]

template<>
i32 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 77 of file SyclHelper.hpp.

◆ next_obj() [3/22]

template<>
i16 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 81 of file SyclHelper.hpp.

◆ next_obj() [4/22]

template<>
i8 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 85 of file SyclHelper.hpp.

◆ next_obj() [5/22]

template<>
u64 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 89 of file SyclHelper.hpp.

◆ next_obj() [6/22]

template<>
u32 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 93 of file SyclHelper.hpp.

◆ next_obj() [7/22]

template<>
u16 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 97 of file SyclHelper.hpp.

◆ next_obj() [8/22]

template<>
u8 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 101 of file SyclHelper.hpp.

◆ next_obj() [9/22]

template<>
f32 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 111 of file SyclHelper.hpp.

◆ next_obj() [10/22]

template<>
f64 shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 115 of file SyclHelper.hpp.

◆ next_obj() [11/22]

template<>
sycl::vec< f32, 2 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 120 of file SyclHelper.hpp.

◆ next_obj() [12/22]

template<>
sycl::vec< f32, 3 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 125 of file SyclHelper.hpp.

◆ next_obj() [13/22]

template<>
sycl::vec< f32, 4 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 131 of file SyclHelper.hpp.

◆ next_obj() [14/22]

template<>
sycl::vec< f32, 8 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 141 of file SyclHelper.hpp.

◆ next_obj() [15/22]

template<>
sycl::vec< f32, 16 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 155 of file SyclHelper.hpp.

◆ next_obj() [16/22]

template<>
sycl::vec< f64, 2 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 177 of file SyclHelper.hpp.

◆ next_obj() [17/22]

template<>
sycl::vec< f64, 3 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 182 of file SyclHelper.hpp.

◆ next_obj() [18/22]

template<>
sycl::vec< f64, 4 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 188 of file SyclHelper.hpp.

◆ next_obj() [19/22]

template<>
sycl::vec< f64, 8 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 198 of file SyclHelper.hpp.

◆ next_obj() [20/22]

template<>
sycl::vec< f64, 16 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 212 of file SyclHelper.hpp.

◆ next_obj() [21/22]

template<>
sycl::vec< u16, 3 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 234 of file SyclHelper.hpp.

◆ next_obj() [22/22]

template<>
sycl::vec< u32, 3 > shamsys::syclhelper::next_obj ( std::mt19937 &  eng,
std::uniform_real_distribution< f64 > &  distval 
)
inline

Definition at line 241 of file SyclHelper.hpp.

◆ print_vec() [1/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
sycl::vec< T, 16 >  a 
)
inline

Definition at line 60 of file SyclHelper.hpp.

◆ print_vec() [2/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
sycl::vec< T, 2 >  a 
)
inline

Definition at line 39 of file SyclHelper.hpp.

◆ print_vec() [3/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
sycl::vec< T, 3 >  a 
)
inline

Definition at line 44 of file SyclHelper.hpp.

◆ print_vec() [4/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
sycl::vec< T, 4 >  a 
)
inline

Definition at line 49 of file SyclHelper.hpp.

◆ print_vec() [5/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
sycl::vec< T, 8 >  a 
)
inline

Definition at line 54 of file SyclHelper.hpp.

◆ print_vec() [6/6]

template<class T >
void shamsys::syclhelper::print_vec ( std::ostream &  ostream,
a 
)
inline

Definition at line 68 of file SyclHelper.hpp.