LFTHREADS: a lock-free thread library
2008 (English)In: SIGARCH Computer Architecture News, Association for Computing Machinery, Inc. , 2008, Vol. 4878, p. 88-92Conference paper, Published paper (Refereed)
Abstract [en]
This extended abstract presents LFTHREADS, a thread library entirely based on lock-free methods, i.e. no spinlocks or similar synchronization mechanisms are employed in the implementation of the multithreading. Since lockfreedom is highly desirable in multiprocessors/multicores due to its advantages in parallelism, fault-tolerance, convoy-avoidance and more, there is an increased demand in lock-free methods in parallel applications, hence also in multiprocessor/multicore system services. LFTHREADS is the first thread library that provides a lock-free implementation of blocking synchronization primitives for application threads; although the latter may sound like a contradicting goal, such objects have several benefits: e.g. library operations that block and unblock threads on the same synchronization object can make progress in parallel while maintaining the desired thread-level semantics and without having to wait for any "low" operations among them. Besides, as no spin-locks or similar synchronization mechanisms are employed, memory contention can be reduced and processors/cores are able to do useful work. As a consequence, applications, too, can enjoy enhanced parallelism and fault-tolerance. For the synchronization in LFTHREADS we have introduced a new method, which we call responsibility hand-off (RHO), that does not need any special kernel support. The RHO method is also of independent interest, as it can also serve as a tool for lock-free token passing, management of contention and interaction between scheduling and synchronization. This paper gives an outline and the context of LFTHREADS. For more details the reader is refered to [7] and [8].
Place, publisher, year, edition, pages
Association for Computing Machinery, Inc. , 2008. Vol. 4878, p. 88-92
Series
Blekinge Tekniska Högskola Forskningsrapport, ISSN 1103-1581
Keywords [en]
threading, synchronization, lock-free, mutual exclusion, mutex, Parallell Programming
National Category
Computer Sciences Computer and Information Sciences
Identifiers
URN: urn:nbn:se:hb:diva-6327DOI: 10.1145/1556444.1556456ISI: 000252307500016Scopus ID: 2-s2.0-38549149241Local ID: 2320/6003OAI: oai:DiVA.org:hb-6327DiVA, id: diva2:887014
Conference
First Swedish Workshop on Multi-Core Computing 2008, Ronneby, Sverige
2015-12-222015-12-222018-01-10Bibliographically approved