Hacker News

Strs2FillMyDrms
MCS (Mellor-Crummey and Scott) Variations in Java github.com

Strs2FillMyDrmsop9 hours ago

This MCS variation ("UnfairMCS"), spreads the CAS latency across multiple `node.next`, as opposed to its CLH counterpart which focuses its CAS pressures on a single point of contention on TAIL (in the `AbstractQueuedSynchronizer` case this is needed because each `prev` field needs to be set), fetching a new memory location on failure, helping offset the latency off of main memory, diverging it to all individual trails of `node.next` equally.

hn-front (c) 2024 voximity
source