Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
WIP: ass_cache: experiment with non-blocking optimizations for the LR…
…U list - Instead of adding/promoting items in the LRU list within ass_cache_get, add them to a simpler singly-linked lock-free list of items used this frame - In ass_cache_cut, add/promote the contents of the list from the previous frame - Take locks as little as possible (by using double-checked locking patterns, making more things atomic, etc) - Shard locks by bucket (this should really change to be by thread, via a mechanism suggested by MrSmile)
- Loading branch information
Showing
1 changed file
with
139 additions
and
77 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters