|
cuSBF
|
One 256-bit filter block stored as an array of Config::blockWordCount words. More...
Static Public Member Functions | |
| template<uint64_t HashIndex> | |
| constexpr __host__ static __device__ uint64_t | sectorizedBitAddress (uint64_t baseHash) |
Bit position within shard word HashIndex % blockWordCount for baseHash. | |
| __device__ static __forceinline__ void | sectorizedHashToMasks (uint64_t baseHash, uint64_t &mask0, uint64_t &mask1, uint64_t &mask2, uint64_t &mask3) |
| Accumulates Bloom bit masks for all hash indices into four shard words. | |
Public Attributes | |
| uint64_t | words [wordCount] |
Sector words, hash i maps to word i % blockWordCount. | |
Static Public Attributes | |
| static constexpr uint64_t | wordCount = Config::blockWordCount |
| static constexpr uint64_t | wordBits = Config::wordBits |
| static constexpr int | wordBitsLog2 = cuda::std::bit_width(wordBits) - 1 |
| static constexpr uint64_t | wordMask = (1ULL << wordBitsLog2) - 1 |
| static constexpr int | hashShift = 64 - wordBitsLog2 |
| static constexpr uint64_t | sliceWidth = 64 / Config::hashCount |
| static constexpr bool | useBitSlicing = sliceWidth >= wordBitsLog2 |
One 256-bit filter block stored as an array of Config::blockWordCount words.
Each shard is addressed as a unit: a minimizer hash selects the shard, and the s-mer-derived hashes set/test bits within it.
Definition at line 19 of file filter_impl.cuh.
|
inlinestaticconstexpr |
Bit position within shard word HashIndex % blockWordCount for baseHash.
Uses bit-slicing when sliceWidth >= wordBitsLog2, otherwise a salted multiply-shift.
Definition at line 37 of file filter_impl.cuh.
|
inlinestatic |
Accumulates Bloom bit masks for all hash indices into four shard words.
ORs into the output masks in place, used during insert to build per-k-mer updates.
Definition at line 54 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 24 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 25 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 26 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 21 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 22 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 20 of file filter_impl.cuh.
|
staticconstexpr |
Definition at line 23 of file filter_impl.cuh.
| uint64_t cusbf::filter_block< Config >::words[wordCount] |
Sector words, hash i maps to word i % blockWordCount.
Definition at line 29 of file filter_impl.cuh.