Lazy Determinism for Faster Deterministic Multithreading

8Citations
Citations of this article
22Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Deterministic multithreading (DMT) fundamentally requires total, deterministic ordering of synchronization operations on each synchronization variable, i.e. a partial ordering over all synchronization operations. In practice, prior DMT systems totally order all synchronization operations, regardless of synchronization variable; the result is severe performance degradation for highly concurrent applications using fine-grained synchronization. Motivated by this class of programs, we propose lazy determinism as a way to go beyond this total order bottleneck. Lazy determinism executes synchronization operations speculatively, and enforces determinism by subsequently validating the resulting order of operations. If an ordering violation is detected, part of the computation is restarted. By enforcing only the partial ordering required to guarantee determinism, lazy determinism increases the available parallelism during deterministic execution. We implement LAZYDET via a pure-software runtime system accelerated by custom Linux kernel support. Our experiments with hash table benchmarks from Synchrobench show roughly an order of magnitude improvement in the performance of lock-based data structures compared to the state of the art in eager determinism. For benchmarks from PARSEC-2, SPLASH-2, and Phoenix, we demonstrate runtime improvements of up to 2× on the programs that challenge deterministic execution environments the most.

Cite

CITATION STYLE

APA

Merrifield, T., Roghanchi, S., Devietti, J., & Eriksson, J. (2019). Lazy Determinism for Faster Deterministic Multithreading. In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS (pp. 879–891). Association for Computing Machinery. https://doi.org/10.1145/3297858.3304047

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free