MCS (Mellor-Crummey and Scott) Variations in Java
1 points
10 hours ago
| 1 comment
| github.com
| HN
Strs2FillMyDrms
10 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.
reply