warpcore 0.0.1
Hashing at the Speed of Light on modern CUDA-accelerators
defaults.cuh
Go to the documentation of this file.
1 #ifndef WARPCORE_DEFAULTS_CUH
2 #define WARPCORE_DEFAULTS_CUH
3 
4 namespace warpcore
5 {
6 
7 /*! \brief default types and values
8  */
9 namespace defaults
10 {
11  template<class Key>
12  HOSTDEVICEQUALIFIER INLINEQUALIFIER
13  constexpr Key empty_key() noexcept { return Key{0}; }
14 
15  template<class Key>
16  HOSTDEVICEQUALIFIER INLINEQUALIFIER
17  constexpr Key tombstone_key() noexcept { return ~Key{0}; }
18 
19  template<class Key>
20  HOSTDEVICEQUALIFIER INLINEQUALIFIER
21  constexpr Key seed() noexcept { return Key{0x5ad0ded}; }
22 
23  HOSTDEVICEQUALIFIER INLINEQUALIFIER
24  constexpr index_t temp_memory_bytes() noexcept { return 2048; }
25 
26  HOSTDEVICEQUALIFIER INLINEQUALIFIER
27  constexpr index_t probing_length() noexcept { return ~index_t(0) - 1024; }
28 
29  template<class Key>
31 
32  template<class Key, index_t CGSize>
35 
37 
38  template<class Key, class Value>
40 
41  template<class Value>
43 
44 } // namespace defaults
45 
46 } // namespace warpcore
47 
48 #endif /* WARPCORE_DEFAULTS_CUH */