计算机科学技术学报(英文版)
計算機科學技術學報(英文版)
계산궤과학기술학보(영문판)
JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY
2015年
1期
42-56
,共15页
卢凯%周旭%王小平%陈沉%Chen Chen
盧凱%週旭%王小平%陳沉%Chen Chen
로개%주욱%왕소평%진침%Chen Chen
determinism%multithreading%framework%flexible
Determinism is very useful to multithreaded programs in debugging, testing, etc. Many deterministic ap-proaches have been proposed, such as deterministic multithreading (DMT) and deterministic replay. However, these sys-tems either are ine?cient or target a single purpose, which is not flexible. In this paper, we propose an e?cient and flexible deterministic framework for multithreaded programs. Our framework implements determinism in two steps: relaxed determinism and strong determinism. Relaxed determinism solves data races e?ciently by using a proper weak memory consistency model. After that, we implement strong determinism by solving lock contentions deterministically. Since we can apply different approaches for these two steps independently, our framework provides a spectrum of deterministic choices, including nondeterministic system (fast), weak deterministic system (fast and conditionally deterministic), DMT system, and deterministic replay system. Our evaluation shows that the DMT configuration of this framework could even outperform a state-of-the-art DMT system.