Sciweavers

JPDC
2007

Performance of memory reclamation for lockless synchronization

13 years 4 months ago
Performance of memory reclamation for lockless synchronization
Achieving high performance for concurrent applications on modern multiprocessors remains challenging. Many programmers avoid locking to improve performance, while others replace locks with non-blocking synchronization to protect against deadlock, priority inversion, and convoying. In both cases, dynamic data structures that avoid locking require a memory reclamation scheme that reclaims elements once they are no longer in use. The performance of existing memory reclamation schemes has not been thoroughly evaluated. We conduct the first fair and comprehensive comparison of three recent schemes—quiescent-state-based reclamation, epoch-based reclamation, and hazard-pointer-based reclamation—using a flexible microbenchmark. Our results show that there is no globally optimal scheme. When evaluating lockless synchronization, programmers and algorithm designers should thus carefully consider the data structure, the workload, and the execution environment, each of which can dramatically...
Thomas E. Hart, Paul E. McKenney, Angela Demke Bro
Added 16 Dec 2010
Updated 16 Dec 2010
Type Journal
Year 2007
Where JPDC
Authors Thomas E. Hart, Paul E. McKenney, Angela Demke Brown, Jonathan Walpole
Comments (0)