DocumentCode
167304
Title
Deterministic Synchronization of Multi-threaded Programs with Operational Transformation
Author
Boelmann, Christopher ; Schwittmann, Lorenz ; Weis, Torben
Author_Institution
Distrib. Syst. Group, Univ. of Duisburg-Essen, Duisburg, Germany
fYear
2014
fDate
19-23 May 2014
Firstpage
381
Lastpage
390
Abstract
Today´s mainstream programming language concepts originate from a time when processes were executed in a single thread and the outcome of computation was deterministic. To deal with multi-threaded execution synchronization mechanisms have to be used to restrict parallel execution to a point where the program produces correct results for all possible interleaving executions. This is constantly leading to deadlocks and race conditions, i.e. undesired non-deterministic behavior. In this paper, we propose a new set of synchronization primitives, Spawn and Merge, that yield deterministic program execution for multi-threaded programs. This means that there are no race conditions when using this synchronization technique and deadlocks can be avoided right away. Concurrent access to data structures is resolved using operational transformation. Using two example scenarios we show how these synchronization primitives can be used and that they are equivalent to semaphores. Furthermore, we evaluate our framework by implementing a network simulator. We show that despite a constant overhead, the performance is comparable to using standard synchronization primitives while yielding deterministic results.
Keywords
high level languages; multi-threading; operating systems (computers); synchronisation; Spawn and Merge; deadlocks; deterministic synchronization; mainstream programming language; multithreaded programs; operational transformation; parallel execution; race conditions; Data structures; Indexes; Instruction sets; Merging; Programming; Synchronization; Deterministic Synchronization; Operational Transformation; Parallel programming models; Spawn and Merge;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel & Distributed Processing Symposium Workshops (IPDPSW), 2014 IEEE International
Conference_Location
Phoenix, AZ
Print_ISBN
978-1-4799-4117-9
Type
conf
DOI
10.1109/IPDPSW.2014.50
Filename
6969413
Link To Document