diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2016-05-09 08:31:14 +0200 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2016-05-09 08:52:31 +0200 |
commit | f17032f703288d43a76cffe8fa89b87ade9e3074 (patch) | |
tree | c6b574f4b1adc85bfae534c46bbe9a3e4e740613 /src/bloom.h | |
parent | fbd84788e676c9cbd126f6236ec46bb2f342bd00 (diff) | |
parent | 1953c40aa9589a03035fd294f3ba3549374a4826 (diff) | |
download | bitcoin-f17032f703288d43a76cffe8fa89b87ade9e3074.tar.xz |
Merge #7934: Improve rolling bloom filter performance and benchmark
1953c40 More efficient bitsliced rolling Bloom filter (Pieter Wuille)
aa62b68 Benchmark rolling bloom filter (Pieter Wuille)
Diffstat (limited to 'src/bloom.h')
-rw-r--r-- | src/bloom.h | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/src/bloom.h b/src/bloom.h index b0ad8b875d..ad6de625d8 100644 --- a/src/bloom.h +++ b/src/bloom.h @@ -135,20 +135,9 @@ private: int nEntriesPerGeneration; int nEntriesThisGeneration; int nGeneration; - std::vector<uint32_t> data; + std::vector<uint64_t> data; unsigned int nTweak; int nHashFuncs; - - unsigned int Hash(unsigned int nHashNum, const std::vector<unsigned char>& vDataToHash) const; - - inline int get(uint32_t position) const { - return (data[(position >> 4) % data.size()] >> (2 * (position & 0xF))) & 0x3; - } - - inline void put(uint32_t position, uint32_t val) { - uint32_t& cell = data[(position >> 4) % data.size()]; - cell = (cell & ~(((uint32_t)3) << (2 * (position & 0xF)))) | (val << (2 * (position & 0xF))); - } }; #endif // BITCOIN_BLOOM_H |