Transactions on Software Engineering

The IEEE Transactions on Software Engineering (TSE) is an archival journal published bimonthly. We are interested in well-defined theoretical results and empirical studies that have potential impact on the construction, analysis, or management of software. Read the full scope of TSE.

Expand your horizons with Colloquium, a monthly survey of abstracts from all CS transactions!

From the November 2018 Issue

Using Local Clocks to Reproduce Concurrency Bugs

By Zhe Wang, Chenggang Wu, Xiang Yuan, Zhenjiang Wang, Jianjun Li, Pen-Chung Yew, Jeff Huang, Xiaobing Feng, Yanyan Lan, Yunji Chen, Yuanming Lai, and Yong Guan

Featured article thumbnail image Multi-threaded programs play an increasingly important role in current multi-core environments. Exposing concurrency bugs and debugging such multi-threaded programs are quite challenging due to their inherent non-determinism. In order to mitigate such non-determinism, many approaches such as record-and-replay have been proposed. However, those approaches often suffer significant performance degradation because they require a large amount of recorded information and/or long analysis and replay time. In this paper, we propose an efficient and effective approach, ReCBuLC (reproducing concurrency bugs using local clocks), to take advantage of the hardware clocks available on modern processors. The key idea is to reduce the recording overhead and the time to analyze events’ global order by recording timestamps in each thread. These timestamps are used to determine the global order of shared accesses. To avoid the large overhead in accessing system-wide global clock, we opt to use local per-core clocks that incur much less access overhead. We then propose techniques to resolve skews among local clocks and obtain an accurate global event order. By using per-core clocks, state-of-the-art bug reproducing systems such as PRES and CLAP can reduce their recording overheads by up to 85 percent, and the analysis time up to 84.66% ∼99.99%, respectively.

download PDF View the PDF of this article      csdl View this issue in the digital library      TSE Facebook Link  TSE on Facebook

Editorials and Announcements


  • We are pleased to announce that Nenad Medvidović, a Professor in the Computer Science Department and in the Informatics Program at the University of Southern California, has been selected as the new Editor-in-Chief of the IEEE Transactions on Software Engineering starting in 2018.
  • TSE now offers authors access to Code Ocean. Code Ocean is a cloud-based executable research platform that allows authors to share their algorithms in an effort to make the world’s scientific code more open and reproducible. Learn more or sign up for free.
  • According to Clarivate Analytics' 2016 Journal Citation Report, TSE has an impact factor of 3.272.


Reviewers List

Annual Index

Access All Recently Published TSE Articles

RSS Subscribe to the RSS feed of recently published TSE content

mail icon Sign up for e-mail notifications through IEEE Xplore Content Alerts

preprints icon View TSE preprints in the Computer Society Digital Library