Releases: void-research/zero-pool
Releases · void-research/zero-pool
Release list
v0.8.5
v0.8.4
- Removed atomic overhead from retired batch fields (retired_epoch / retired_next).
- Tests now pass Miri with strict memory/thread leak detection enabled (-Zmiri-ignore-leaks was previously only needed as a workaround for the static global pool test).
v0.8.3
Performance:
- Up to ~20% faster pool initialisation
- New worker signalling system reduces task submission overhead
- Reduced some atomic orderings backed by formal verification (Still valid on weak memory models, eg: ARM)
- Inlined user facing TaskFuture methods (wait, is_complete, wait_timeout)
- Cold-path separation of retired list cleanup logic to minimise worker loop overhead
Concurrency & Memory:
- Resolved MIRI aliasing/tree-borrows warnings during pointer retagging (Only affected internal tests)
- Prevented potential duration underflow panics in wait_timeout using saturating_sub
Benchmarking:
- Split benchmark file into dedicated targets for accurate performance isolation
- Readme updated
v0.8.1
- Allocation free epoch reclamation
- RAII lifecycle cleanup
- Simplified thread storage
- Reduced SeqCst CAS overhead
- Submission path that is optimised for multi-threaded submission is now the default
v0.8.0
- Multi-threaded memory reclamation
- Reduced the compile size of generic functions
- Many internal tweaks
v0.7.1
- Updated docs
- Replace raw pointer types with NonNull
Full Changelog: v0.7.0...v0.7.1
v0.7.0
- Passes MIRI
- Lots of performance improvements
Full Changelog: v0.6.3...v0.7.0
v0.6.3
v0.6.0
- Removed all macros for better UX
- Documentation update and clean up
v0.5.6
task_future; use wait_timeout_while instead of wait_timeout to correctly track remaining time on spurious wakeups