2
0
mirror of https://github.com/boostorg/bloom.git synced 2026-01-28 07:02:09 +00:00
Commit Graph

52 Commits

Author SHA1 Message Date
joaquintides
916c845c41 added documentation
* removed unneeded explicit

* fixed boundary results for capacity_for and fpr_for

* renamed used_block_size to used_value_size

* added reset(n,n)

* added initial documentation draft

* static asserted assumption on Block size

* synced up naming in comment with that of docs

* added implementation notes

* editorial

* expanded tables

* removed unneeded explicit

* fixed boundary results for capacity_for and fpr_for

* renamed used_block_size to used_value_size

* added reset(n,n)

* added initial documentation draft

* static asserted assumption on Block size

* synced up naming in comment with that of docs

* added implementation notes

* editorial

* added benchmarks

* editorial

* added configuration section

* editorial

* s/multiinsertion/multi-insertion

* added section on use cases

* editorial
2025-04-02 20:42:19 +02:00
joaquintides
2f22602ece added (n,fpr) construction, fpr_for, capacity_for (#2)
* added (n,fpr) construction

* added missing file

* fixed type for max_fpr_exp

* matched types of two variables

* shut down AddressSanitizer: allocation-size-too-big

* placed __attribute__ right

* s/::operator new/malloc to avoid AddressSanitizer: allocation-size-too-big

* prelimited size as only way to avoid AddressSanitizer: allocation-size-too-big

* adjusted n to target fpr and relaxed deviation limits

* added filter::capacity_for

* avoided signed/unsigned mismatch

* stylistic

* added filter::fpr_for

* stylistic

* [skip ci] updated FPR estimation section

* [skip ci] typo

* [skip ci] editorial

* [skip ci] typo

* [skip ci] editorial
2025-03-22 19:04:33 +01:00
joaquintides
10ea9c06b4 fixed previous commit 2025-03-04 09:58:38 +01:00
joaquintides
c049bc3d5f s/used_block_size/bucket_size in unaligned cases 2025-03-04 09:47:57 +01:00
joaquintides
8bd6f4353b added fast_multiblock64.hpp 2025-03-02 13:02:00 +01:00
joaquintides
2e060b7eb6 added comment 2025-03-01 16:07:30 +01:00
joaquintides
e7017591ba stylistic 2025-03-01 12:24:02 +01:00
joaquintides
6df60acc80 added missing header for SSE4.1 2025-03-01 11:58:05 +01:00
joaquintides
741c7c636e emulated _mm_testc_si128 for SSE<4.1 2025-03-01 11:51:01 +01:00
joaquintides
fc5b5f0606 added fast_multiblock32/SSE2 2025-03-01 10:44:53 +01:00
joaquintides
ac2e7d4a16 fixed copypaste error 2025-02-28 20:29:42 +01:00
joaquintides
f3b3ed02a4 microoptimized make_uint32x4x2_t, plus made fast_multiblock32 compile in MSVC/ARM 2025-02-28 20:08:49 +01:00
joaquintides
20b684f4bb microoptimized make_m256i 2025-02-28 20:05:37 +01:00
joaquintides
39a0bfcb98 move template parameter Hash to penultimate position 2025-02-27 21:11:48 +01:00
joaquintides
3bfd03619e fixed noexcept clause 2025-02-27 20:26:23 +01:00
joaquintides
2bb11525f6 removed superfluous AVX code 2025-02-27 20:25:03 +01:00
joaquintides
37e29b61a8 added ARM version of fast_multiblock32
* checked if Neon is available in CI

* added missing file

* implemented ARM-based fast_multiblock32

* failing, see if its only for K!=8

* reverted

* fixed check_uint32x4x2_t for kp!=8

* fixed masks

* stylistic

* stylistic

* fixed conversion warning

* used explicit conversion

* stylistic

* stylistic

* fixed copypaste error, used more hash bits in make_uint32x4x2_t
2025-02-26 16:30:30 +01:00
joaquintides
f28e04e30f stylistic 2025-02-25 16:57:50 +01:00
joaquintides
50a991b519 editorial 2025-02-25 13:49:53 +01:00
joaquintides
1630e04f6e added test_capacity 2025-02-25 13:38:29 +01:00
joaquintides
29048b206c added test_comparison 2025-02-25 12:09:36 +01:00
joaquintides
357999f7c9 made sure filter{f.capacity()}.capacity()==f.capacity() 2025-02-24 19:06:14 +01:00
joaquintides
d7c6972a45 added test_allocator_aware_construction, miscellanea 2025-02-24 13:01:27 +01:00
joaquintides
fb16690165 avoided shadowed template param 2025-02-24 11:59:45 +01:00
joaquintides
ba3f2581f6 avoided shadowed template param 2025-02-24 11:57:39 +01:00
joaquintides
1804231c03 completed emplace and insert, added tests, miscellanea 2025-02-24 11:53:48 +01:00
joaquintides
601e1c2909 added range insert 2025-02-23 19:20:00 +01:00
joaquintides
35cee809a1 added tests for assignment and swap 2025-02-21 18:56:22 +01:00
joaquintides
61f0981323 reverted prior (success) 2025-02-21 17:22:48 +01:00
joaquintides
732128ece5 made AVX2 code fail to see if -march=native hit it 2025-02-21 17:19:04 +01:00
joaquintides
63804216fe typo 2025-02-21 13:38:58 +01:00
joaquintides
34d3620640 replaced boost::core::bit_width with C++11 constexpr version 2025-02-21 12:49:52 +01:00
joaquintides
48adfd13bd s/{...}/(...) for pre-DR1467 compilers 2025-02-21 12:11:47 +01:00
joaquintides
8638d9645f added test_construction 2025-02-21 11:42:57 +01:00
joaquintides
20efa52197 eliminated noexcept-violating step in filter::operator=(filter&&) 2025-02-20 18:38:53 +01:00
joaquintides
62c62c3808 polished move ctor 2025-02-20 18:37:25 +01:00
joaquintides
765af6cb26 refactored merge_{and|or} to &= and |= 2025-02-20 18:06:22 +01:00
joaquintides
c0e6c74a22 added noexcepts, operator{==|!=}, swap, merge_{and|or} 2025-02-19 19:53:39 +01:00
joaquintides
79fa6f4975 editorial 2025-02-19 09:38:09 +01:00
joaquintides
3d90f8f079 stylistic 2025-02-19 09:23:57 +01:00
joaquintides
5852415299 fixed header guard macro names 2025-02-18 19:22:17 +01:00
joaquintides
01bbe859bf added boilerplate API functions 2025-02-18 19:21:07 +01:00
joaquintides
5874866541 implemented filter_core allocator aware assignment 2025-02-17 20:15:20 +01:00
joaquintides
455d487af8 narrowed down null capacity check 2025-02-17 18:06:37 +01:00
joaquintides
bf27165f3e implemented filter_core allocator aware construction 2025-02-16 19:35:50 +01:00
joaquintides
d2f16884ef remove unneeded #include 2025-02-15 18:56:45 +01:00
joaquintides
2b8823e0d6 extended fast_multiblock32 to arbitrary K 2025-02-15 11:41:59 +01:00
joaquintides
dcbfa124f0 worked around clang-cl codegen fiasco 2025-02-14 13:18:55 +01:00
joaquintides
8aa1708746 used internal 64-bit hash values even in 32-bit-mode 2025-02-12 18:50:56 +01:00
joaquintides
b11aaab189 extended comparison table 2025-02-11 18:49:25 +01:00