Document Type

Technical Report

Publication Date


Technical Report Number



Since the design of lock-free data structures often poses a formidable intellectual challenge, researchers are constantly in search of abstractions and primitives that simplify this design. The multiword LL/SC object is such a primitive: many existing algorithms are based on this primitive, including the nonblocking and wait-free universal constructions of Anderson and Moir (1995), the closed objects construction of Chandra et al.(1998) and the snapshot algorithms of Jayanti (2002, 2004). In this paper, we consider the problem of implementing a W-word LL/SC object shared by N processes. The previous best algorithm, due to Anderson and Moir (1995), is time optimal (LL and SC operations run in O(W) time), but has a space complexity of O(N^2W). We present an algorithm that uses novel buffer management ideas to cut down the space complexity by a factor of N to O(NW), while still being time optimal.