XeTLA v0.3.6
IntelĀ® Xe Templates for Linear Algebra - API Definition Document
 
Loading...
Searching...
No Matches
gpu::xetla::xetla_rand_t< SIMD, round > Struct Template Reference

#include <rand.hpp>

Public Member Functions

__XETLA_API void init (uint64_t seed, uint64_t subseq, uint64_t offset)
 
__XETLA_API xetla_vector< uint32_t, 4 *SIMDrand ()
 

Public Attributes

xetla_vector< uint32_t, 2 *SIMDkey
 
xetla_vector< uint32_t, 4 *SIMDcounter
 

Static Public Attributes

static constexpr uint32_t kPhilox10A = 0x9E3779B9
 
static constexpr uint32_t kPhilox10B = 0xBB67AE85
 
static constexpr uint32_t kPhiloxSA = 0xD2511F53
 
static constexpr uint32_t kPhiloxSB = 0xCD9E8D57
 

Member Function Documentation

◆ init()

template<uint32_t SIMD = 16, uint32_t round = 7>
__XETLA_API void gpu::xetla::xetla_rand_t< SIMD, round >::init ( uint64_t  seed,
uint64_t  subseq,
uint64_t  offset 
)
inline

◆ rand()

template<uint32_t SIMD = 16, uint32_t round = 7>
__XETLA_API xetla_vector< uint32_t, 4 *SIMD > gpu::xetla::xetla_rand_t< SIMD, round >::rand ( )
inline

Member Data Documentation

◆ counter

template<uint32_t SIMD = 16, uint32_t round = 7>
xetla_vector<uint32_t, 4 * SIMD> gpu::xetla::xetla_rand_t< SIMD, round >::counter

◆ key

template<uint32_t SIMD = 16, uint32_t round = 7>
xetla_vector<uint32_t, 2 * SIMD> gpu::xetla::xetla_rand_t< SIMD, round >::key

◆ kPhilox10A

template<uint32_t SIMD = 16, uint32_t round = 7>
constexpr uint32_t gpu::xetla::xetla_rand_t< SIMD, round >::kPhilox10A = 0x9E3779B9
staticconstexpr

◆ kPhilox10B

template<uint32_t SIMD = 16, uint32_t round = 7>
constexpr uint32_t gpu::xetla::xetla_rand_t< SIMD, round >::kPhilox10B = 0xBB67AE85
staticconstexpr

◆ kPhiloxSA

template<uint32_t SIMD = 16, uint32_t round = 7>
constexpr uint32_t gpu::xetla::xetla_rand_t< SIMD, round >::kPhiloxSA = 0xD2511F53
staticconstexpr

◆ kPhiloxSB

template<uint32_t SIMD = 16, uint32_t round = 7>
constexpr uint32_t gpu::xetla::xetla_rand_t< SIMD, round >::kPhiloxSB = 0xCD9E8D57
staticconstexpr