Proceedings of the Tenth European Conference on Computer Systems 2015
DOI: 10.1145/2741948.2741960
|View full text |Cite
|
Sign up to set email alerts
|

High-performance determinism with total store order consistency

Abstract: We present CONSEQUENCE, a deterministic multi-threading library. CONSEQUENCE achieves deterministic execution via store buffering and strict ordering of synchronization operations. To ensure high performance under a wide variety of conditions, the ordering of synch operations is based on a deterministic clock [25], and store buffering is implemented using version-controlled memory [23].Recent work on deterministic concurrency [14,19] has proposed relaxing the consistency model beyond total store order (TSO). T… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
18
0

Year Published

2015
2015
2020
2020

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 14 publications
(21 citation statements)
references
References 36 publications
0
18
0
Order By: Relevance
“…Communication may be restricted through thread isolation techniques (in the case of strong determinism), and the order of operations is regulated by a deterministic logical clock (DLC). LD adds lazy determinism to C [30], an existing deterministic execution environment. We briey review the operation of C below.…”
Section: Background and Motivationmentioning
confidence: 99%
See 1 more Smart Citation
“…Communication may be restricted through thread isolation techniques (in the case of strong determinism), and the order of operations is regulated by a deterministic logical clock (DLC). LD adds lazy determinism to C [30], an existing deterministic execution environment. We briey review the operation of C below.…”
Section: Background and Motivationmentioning
confidence: 99%
“…These benets come at a performance cost, however, particularly for synchronization-intensive programs. In all existing DMT systems, both those that determinize the outcome of data races (strong determinism schemes) [4,15,19,26,27,30,32] and weak determinism schemes that ignore races [33], deterministic ordering is eagerly enforced. As a result, synchronization operations follow a deterministic total order regardless of variable.…”
Section: Introductionmentioning
confidence: 99%
“…Since threads in libdet run sequentially, some programs will deadlock if they use spin-waiting. We plan to use a more general deterministic runtime system [Kai Lu et al 2014;Liu et al 2011;Merrifield et al 2015;Merrifield and Eriksson 2013] to enable true concurrency in future work. 6 CASE STUDIES 6.1 Case Study 1: Parallel Software Builds with detmake To exercise DetFlow's capabilities, we developed a clone of the GNU make build tool using DetFlow, which we have named detmake.…”
Section: Limitations Of Libdet Runtime Determinizationmentioning
confidence: 99%
“…There are also many runtime systems that focus on making programs deterministic in a languageagnostic way. Some focus on programs without data races [Olszewski et al 2009], while others focus on making even racy programs deterministic via hardware support [Devietti et al 2009[Devietti et al , 2011Hower et al 2011] or purely in software [Kai Lu et al 2014;Liu et al 2011;Merrifield et al 2015;Merrifield and Eriksson 2013]. 9 DISCUSSION AND FUTURE WORK 9.1 Implementation in Other Languages Implementing a framework like DetFlow does not require a purely functional language like Haskell as the coordinator language.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation