Algorithms for synchronization and consistency in concurrent system services
Doktorsavhandling, 2006

Synchronization, consistency and scalability are important issues in the design of concurrent computer system services. In this thesis we study the application of optimistic and scalable methods in concurrent system services. In a distributed setting we study scalable tracking of the causal relations between events, lightweight information dissemination in optimistic causal order in distributed systems and fault-tolerant and dynamic resource sharing. Further, we study scalable memory allocation, memory reclamation, threading, thread synchronization and data structures in shared memory systems. For each of the services we study we give the design of algorithms using optimistic methods, assess the correctness and analyze the behaviour of the algorithm, and in most cases describe implementations and perform experimental studies comparing the proposed algorithms to “traditional” approaches. We present a study of the accuracy of plausible timestamps for scalable event tracking in large systems. We analyze how these clocks may relate causally independent event pairs and based on the analysis we propose two new clock algorithms to satisfy the analysis criteria. We propose an information dissemination service providing optimistic causal order called lightweight causal cluster consistency. It offers scalable behaviour, low message size overhead and highprobability reliability guarantees for e.g. multi-peer collaborative applications. A key component in the dissemination service is a dynamic and fault-tolerant cluster management algorithm, which manages a set of tickets/resources such that each ticket has at most one owner at a time. In the dissemination service this algorithm manages senders and enables the use of small fixed size vector clocks. We present a lock-free concurrent memory allocator, NBmalloc, designed to enhance performance and scalability on multiprocessors which also shows in our experimental evaluation. We present a lock-free memory reclamation algorithm for use in the implementation of lock-free data structures. Our algorithm is the first practical one that has all the following features: (i) guarantees the safety of local as well as global references, (ii) provides an upper bound of deleted but not yet reclaimed nodes, (iii) is compatible with standard memory allocation schemes. We also present LFthreads, a user-level thread library that is implemented entirely using lock-free methods aiming for increased scalability and efficiency over traditional thread libraries.


plausible clocks

memory management

event ordering


optimistic causal order


group communication


memory reclamation

time stamping system

logical clocks

atomic registers.

10.15 EC, EDIT-huset, Rännvägen 6B, Chalmers.
Opponent: Professor, Evangelos Kranakis, School of Computer Science, Carleton University, Ottawa, Canada


Anders Gidenstam

Data- och informationsteknik, Datavetenskap, Datavetenskap, Datakommunikation och distribuerade system (Chalmers)

Multi-word Atomic Read/Write Registers on Multiprocessor Systems

Lecture Notes in Computer Science,; Vol. 3221(2004)p. 736-748

Artikel i vetenskaplig tidskrift

Dynamic and fault-tolerant cluster management

Proceedings of the 5th IEEE International Conference on Peer-to-Peer Computing,; (2005)p. 237 -- 244-

Paper i proceeding

Adaptive Plausible Clocks

Proceedings of the 24th International Conference on Distributed Computing Systems (ICDCS 2004),; (2004)p. 86--93-

Paper i proceeding

Efficient and Reliable Lock-Free Memory Reclamation Based on Reference Counting

Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms & Networks,; (2005)p. 202 - 207

Paper i proceeding

Lightweight Causal Cluster Consistency

Proceedings of the Conference on Innovative Internet Community Systems (I2CS 2005), Lecture Notes in Computer Science Vol. 3908, Springer Verlag, 2006.,; Vol. 3908(2005)p. 17 - 28

Paper i proceeding

Allocating memory in a lock-free manner

Proceedings of the 13th Annual European Symposium on Algorithms,; (2005)p. 329 -- 242-

Paper i proceeding


Datavetenskap (datalogi)



Technical report D - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 20D

Doktorsavhandlingar vid Chalmers tekniska högskola. Ny serie: 2514

10.15 EC, EDIT-huset, Rännvägen 6B, Chalmers.

Opponent: Professor, Evangelos Kranakis, School of Computer Science, Carleton University, Ottawa, Canada