Remix.run Logo
MCS (Mellor-Crummey and Scott) Variations in Java(github.com)
1 points by Strs2FillMyDrms 8 months ago | 1 comments
Strs2FillMyDrms 8 months ago | parent [-]

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.