发明名称 READER/WRITER LOCK WITH REDUCED CACHE CONTENTION
摘要 A scalable locking system is described herein that allows processors to access shared data with reduced cache contention to increase parallelism and scalability. The system provides a reader/writer lock implementation that uses randomization and spends extra space to spread possible contention over multiple cache lines. The system avoids updates to a single shared location in acquiring/releasing a read lock by spreading the lock count over multiple sub-counts in multiple cache lines, and hashing thread identifiers to those cache lines. Carefully crafted invariants allow the use of partially lock-free code in the common path of acquisition and release of a read lock. A careful protocol allows the system to reuse space allocated for a read lock for subsequent locking to avoid frequent reallocating of read lock data structures. The system also provides fairness for write-locking threads and uses object pooling techniques to make reduce costs associated with the lock data structures.
申请公布号 US2010275209(A1) 申请公布日期 2010.10.28
申请号 US20090430903 申请日期 2009.04.28
申请人 MICROSOFT CORPORATION 发明人 DETLEFS DAVID L.
分类号 G06F9/46;G06F12/00;G06F12/08 主分类号 G06F9/46
代理机构 代理人
主权项
地址