Commit d627779e authored by Matthew Fernandez's avatar Matthew Fernandez
Browse files

use a "slippy" seen set occupancy counter

Instead of maintaining a single global seen_count, we now maintain this as well
as thread-local copies of this. We allow the thread-local copies to drift by a
(fixed) amount from the global counter. The advantage of this is that it reduces
contention on the global seen_count, which was previously subject to a lot of
cache line bouncing. The downside is that the decision of when to expand the
set is no longer precise; it can now happen a little after the set has exceeded
the occupancy limit. This seems a small price to pay for increased scalability
though.
parent 6b95f55a
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment