Sort of Token Ring meets Spinlocks. Claims significant performance boosts; LevelDB RON vs. Shiftlock: user-mode +20%, kernel-mode +80%, RON-plock +300% / +1900%.
Paper discusses existing issues w/ multi-core atomic ops. For example: in SIMD-ish algorithms, where multiple cores execute the same code, some cores will be slightly faster than others due to thermal or manufacturing differences. Faster cores will usually win races with slower ones, skewing algo fairness and tending to stall particular cores. RON creates deterministic locking order graphs (first core A, then C, then B, then A again) based upon measured core-to-core latencies.
1 comment
[ 0.64 ms ] story [ 10.7 ms ] threadPaper discusses existing issues w/ multi-core atomic ops. For example: in SIMD-ish algorithms, where multiple cores execute the same code, some cores will be slightly faster than others due to thermal or manufacturing differences. Faster cores will usually win races with slower ones, skewing algo fairness and tending to stall particular cores. RON creates deterministic locking order graphs (first core A, then C, then B, then A again) based upon measured core-to-core latencies.