Safe memory reclamation (SMR) algorithms suffer from a trade-off between bounding unreclaimed memory and the speed of reclamation. Hazard pointer (HP) based algorithms bound unreclaimed memory at all times, but tend to be slower than other approaches. Epoch based reclamation (EBR) algorithms are faster, but do not bound memory reclamation. Other algorithms follow hybrid approaches, requiring special compiler or hardware support, changes to record layouts, and/or extensive code changes. Not all SMR algorithms can be used to reclaim memory for all data structures.
We propose a new neutralization based reclamation (NBR) algorithm that is often faster than the best known EBR algorithms and achieves bounded unreclaimed memory. It is non-blocking when used with a non-blocking operating system (OS) kernel, and only requires atomic read, write and CAS. NBR is straightforward to use with many different data structures, and in most cases, requires similar reasoning and programmer effort to two-phased locking. NBR is implemented using OS signals and a lightweight handshaking mechanism between participating threads to determine when it is safe to reclaim a record. Experiments on a lock-based binary search tree and a lazy linked list show that NBR significantly outperforms many state of the art reclamation algorithms. In the tree, NBR is faster than next best algorithm, DEBRA, by up to 38% and HP by up to 17%. And, in the list, NBR is 15% and 243% faster than DEBRA and HP, respectively.
Tue 2 MarDisplayed time zone: Eastern Time (US & Canada) change
10:00 - 11:00
|NBR: Neutralization Based Reclamation|
Ajay Singh University of Waterloo, Trevor Brown University of Waterloo, Ali Mashtizadeh University of WaterlooLink to publication
|Efficiently Reclaiming Memory in Concurrent Search Data Structures While Bounding Wasted Memory|
Main ConferenceLink to publication
|OrcGC: Automatic Lock-Free Memory Reclamation|
Andreia Correia University of Neuchatel, Switzerland, Pedro Ramalhete Cisco Systems, Pascal Felber University of NeuchâtelLink to publication
|Are Dynamic Memory Managers on GPUs Slow? A Survey and Benchmarks|
Martin Winter Graz University of Technology, Mathias Parger Graz University of Technology, Daniel Mlakar Graz University of Technology, Markus Steinberger Graz University of TechnologyLink to publication