2012
DOI: 10.1145/2160718.2160742
|View full text |Cite
|
Sign up to set email alerts
|

Efficient system-enforced deterministic parallelism

Abstract: Deterministic execution offers many benefits for debugging, fault tolerance, and security. Current methods of executing parallel programs deterministically, however, often incur high costs, allow misbehaved software to defeat repeatability, and transform time-dependent races into input-or path-dependent races without eliminating them. We introduce a new parallel programming model addressing these issues, and use Determinator, a proof-of-concept OS, to demonstrate the model's practicality. Determinator's microk… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
121
0

Year Published

2012
2012
2019
2019

Publication Types

Select...
5
3
1

Relationship

0
9

Authors

Journals

citations
Cited by 86 publications
(121 citation statements)
references
References 51 publications
(121 reference statements)
0
121
0
Order By: Relevance
“…Deterministic operating systems Determinator [21] and dOS [22] enforce determinism at user and OS level by using page protection hardware. Instead of significant changes of an OS, DeTrans-lib is implemented at user level, can be used with any OS, ensures libc-level determinism and guarantees deterministic order of invoking system calls in an application.…”
Section: Related Workmentioning
confidence: 99%
“…Deterministic operating systems Determinator [21] and dOS [22] enforce determinism at user and OS level by using page protection hardware. Instead of significant changes of an OS, DeTrans-lib is implemented at user level, can be used with any OS, ensures libc-level determinism and guarantees deterministic order of invoking system calls in an application.…”
Section: Related Workmentioning
confidence: 99%
“…Determinator [7] advocates a new, radical programming model that converts all races, including races on memory and other shared resources, into exceptions, to achieve pervasive determinism. This programming model is not designed to be backward-compatible.…”
Section: Related Workmentioning
confidence: 99%
“…Burckhardt et al defined isolation and revision types in C# to buffer and merge concurrent data changes in r-fork/r-join threads [6]. Determinator was developed as a new operating system that buffers processes and threads in private workspaces and terminates an execution if concurrent data writes are detected [3]. CoreDet ensured determinism in threaded execution using versioned memory and a deterministic commit protocol [4].…”
Section: Related Workmentioning
confidence: 99%