- Added a new option,
UseEntryPool
, to the builder, which defaults to false. Enabling this option will reuse evicted entries through a sync pool. The sync pool was used by default before v0.6.0 and could not be turned off; but it only benefits systems optimized for allocation and those with heavy concurrent writes. See the README for more details.
- Theine now uses a single LRU window as the "W" part of W-TinyLFU, adaptively changing its size based on hit ratio. This approach is consistent with Caffeine and should improve hit ratios across various workloads.
- The NVM secondary cache has been moved to a separate package: https://github.com/Yiling-J/theine-nvm.
- Reduced
Set
allocations, making Theine zero allocation (amortized). - Improved read performance slightly by utilizing a cached
now
value. - Fixed race conditions in cost (weight) updates that could cause inaccurate policy cost.
- Added benchmarks for different
GOMAXPROC
values in the README.