aaron-ang
opthash-rs
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
docs: remove inline workload measurement comments
perf/core-operation-optimizations
2 days ago
test: attribute deletion churn maintenance through epoch snapshots
perf/core-operation-optimizations
2 days ago
chore: release v0.11.1
release-plz-2026-09-08T03-55-37Z
8 days ago
bench: measure every map at its full insert budget; shrink mode for the memory example (#139)
main
8 days ago
test: hide the fixed hasher behind a Deterministic constructor trait `HashMap::with_hasher(fixed_hasher())` and `with_capacity_and_hasher(n, fixed_hasher())` at every test site were noise. Both support modules now export fixed-hasher aliases plus a `Deterministic` trait providing `new` / `with_capacity`. The library's inherent constructors require `Hasher = DefaultHashBuilder`; when that bound fails on the fixed alias, resolution falls through to the trait, so the suites read exactly as the std/hashbrown tests they port: `HashMap::new()`, `HashMap::with_capacity(n)`. - `tests/support`: `ElasticHashMap`/`FunnelHashMap`/`ElasticHashSet`/ `FunnelHashSet` aliases over `FixedHashBuilder` and `Deterministic` impls for them; the macro suites import `$TestMap as HashMap` from there. - `src/common/test_support.rs`: `Deterministic` blanket impl for any `HashMap` whose backend hashes with `FixedHashBuilder`, and a `FixedElasticHashMap` alias (the public alias's default hasher parameter would otherwise let the inherent constructor win).
bench/memory-shrink-mode
8 days ago
test: use fixed-seed hashers so every test is deterministic `funnel::tests::deletes_past_the_threshold_refresh_the_membership_filter` flaked once on a probabilistic false-positive bound under the process-random foldhash seed. Rather than fix that one test, every test that hashes a key now builds its map with a fixed-seed `foldhash::fast::FixedState`: - `src/common/test_support.rs` exports `FixedHashBuilder`, `FIXED_HASH_SEED`, and `fixed_hasher()`; the filter helper and all elastic unit tests use them. - `tests/support/mod.rs` provides the same for the integration suites. The macro suites (`common`, `map_parity`, `set_parity`) alias `HashMap`/`HashSet` to the fixed-hasher instantiation and construct via `with_hasher` / `with_capacity_and_hasher`; `epoch_lifecycle` does the same per site. - The default hasher remains only in constructor-surface checks that hash no key (`test_zero_capacities`, reserve read-backs). `AGENTS.md` records the rule: fixed-seed hashers in tests, treat a flake as a determinism bug.
bench/memory-shrink-mode
8 days ago
refactor(reserve): name the binary64 exponent constants in the f64 conversions 1023, 1074, and 52 become F64_EXPONENT_BIAS, F64_MIN_SUBNORMAL_EXPONENT, and F64_MANTISSA_BITS, derived from f64::MAX_EXP and f64::MANTISSA_DIGITS. No behaviour change.
bench/memory-shrink-mode
8 days ago
bench: derive MAP_SIZE from the slot count and default reserve fraction MAP_SLOTS = 2^15 is the geometry; MAP_SIZE is that table's insert budget at ReserveFraction::DEFAULT, computed at compile time. A fixture test builds the four maps at MAP_SIZE and asserts each reports capacity() == MAP_SIZE, so the full-budget invariant is enforced rather than stated.
bench/memory-shrink-mode
8 days ago
Latest Branches
CodSpeed Performance Gauge
0%
perf: streamline Elastic metadata and Funnel traversal
#140
2 days ago
793b2ad
perf/core-operation-optimizations
CodSpeed Performance Gauge
0%
chore: release v0.11.1
#138
8 days ago
dcac3ce
release-plz-2026-09-08T03-55-37Z
CodSpeed Performance Gauge
-34%
bench: measure every map at its full insert budget
#139
8 days ago
ec12e75
bench/memory-shrink-mode
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs