Deterministic Concurrency: A Clock-Synchronised Shared Memory Approach

📅 2018-04-16
🏛️ European Symposium on Programming
📈 Citations: 13
Influential: 0
📄 PDF
🤖 AI Summary
Concurrent programming faces a fundamental tension between expressiveness and determinism; conventional shared-memory models suffer from schedule-dependent behavior and non-reproducible outputs due to destructive updates. Method: This paper introduces Clock-Synchronized Memory (CSM), the first shared-memory abstraction that guarantees deterministic semantics for general-purpose concurrent programs—extending beyond the restricted primitives (e.g., registers, signals) supported in traditional synchronous programming (SP). Grounded in the formal mathematical semantics of SP, we design CSM memory primitives, a clock-synchronization protocol, and rigorously defined access rules, ensuring full compatibility with existing SP compilation and verification toolchains. Results: Experiments demonstrate that CSM significantly enhances expressiveness, modularity, and code reusability of concurrent programs while preserving formal verifiability. It provides a theoretically sound and practically deployable deterministic concurrency infrastructure for safety-critical systems.

Technology Category

Application Category

📝 Abstract
Synchronous Programming (SP) is a universal computational principle that provides deterministic concurrency. The same input sequence with the same timing always results in the same externally observable output sequence, even if the internal behaviour generates uncertainty in the scheduling of concurrent memory accesses. Consequently, SP languages have always been strongly founded on mathematical semantics that support formal program analysis. So far, however, communication has been constrained to a set of primitive clock-synchronised shared memory (csm) data types, such as data-flow registers, streams and signals with restricted read and write accesses that limit modularity and behavioural abstractions.
Problem

Research questions and friction points this paper is trying to address.

Bridging concurrency and determinacy in shared resource programming
Providing race-free deterministic memory access in Haskell
Enabling imperative concurrent data structures with deterministic behavior
Innovation

Methods, ideas, or system contributions that make the work stand out.

PSM enables policy-synchronized deterministic memory access
PSM combines concurrency with deterministic behavior
PSM supports imperative, shareable, deterministic data structures
🔎 Similar Papers
💼 Related Jobs
No related jobs found.
M
Michael Mendler
University of Bamberg, Germany
M
Marc Pouzet
ENS, Paris, France
J
J. Aguado
P
P. Roop
R
R. V. Hanxleden