arrow
Return

Efficent and highly portable deterministic multithreading (DetLock)

delete2013-11-19
delete1
PRE
AI
H
Hamid Mushtaq *
Z
Zaid Al-Ars
K
Koen Bertels
DOI:10.1007/s00607-013-0370-9delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
In this paper, we present DetLock, a runtime system to ensure deterministic execution of multithreaded programs running on multicore systems. DetLock does not rely on any hardware support or kernel modification to ensure determinism. For tracking the progress of the threads, logical clocks are used. Unlike previous approaches, which rely on non-portable hardware to update the logical clocks, DetLock employs a compiler pass to insert code for updating these clocks, thus increasing portability. For 4 cores, the average overhead of these clocks on tested benchmarks is brought down from 16 to 2% by applying several optimizations. Moreover, the average overall overhead, including deterministic execution, is 14%.
Keywords:
Multicore
Multithreading
Determinism

Journal

C
Computing
IF:
2.8
Papers:
2.3K
Citations:
3.5K

Organization

D
Delft University of Technology
Scholars:
2.6W
Papers: 2.5W
Citations: 3.8W