Supporting Lock-Free Composition of Concurrent Data Objects
Paper i proceeding, 2010
Lock-free data objects offer several advantages over their blocking counterparts, such as being
immune to deadlocks and convoying and, more importantly, being highly concurrent.
However, composing the operations they provide into larger atomic operations, while still guaranteeing
efficiency and lock-freedom, is a challenging algorithmic task.
We present a lock-free
methodology for composing highly concurrent linearizable objects together by unifying their linearization points.
This makes it possible to relatively easily introduce atomic lock-free move operations to a wide range
of concurrent objects. Experimental evaluation has shown that the operations originally supported by
the data objects keep their performance behavior under our methodology.