2015 · 15 citations · 31 references
ComputingComputer EngineeringComputer ScienceComputer ArchitectureClock ManagementClock SynchronizationConcurrency ControlData SynchronizationMemory ConsistencySynchronization PrimitivesBufferingDeterministic ExecutionMemory OrderingMultiprocessor SynchronizationStore BufferingSynchronizationSynchronization MechanismsTotal Store Order
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].
31
TreadMarks: distributed shared memory on standard workstations and operating systems
Pete Keleher, Anna L. Cox, Sandhya Dwarkadas et al. · 1994 · 640 citations
Marek Olszewski, Jason Ansel, Saman Amarasinghe · 2009 · 380 citations
Joseph Devietti, Brandon Lucia, Luís Ceze et al. · 2009 · 327 citations
A type and effect system for deterministic parallel Java
Robert L. Bocchino, Vikram Adve, Danny Dig et al. · ACM SIGPLAN Notices · 2009 · 296 citations
Mark Batty, Scott Owens, Susmit Sarkar et al. · 2011 · 267 citations