sponsors
usenix conference policies
But How Do We Really Debug Transactional Memory Programs?
Justin E. Gottschlich, Rob Knauerhase, and Gilles Pokam, Intel Labs
With recent announcements of hardware transactional memory (HTM) systems from IBM and Intel, HTM will soon be available for widescale adoption. Such platforms, combined with tested and stable software transactional memory systems, are likely to make real transactional memory (TM) systems available for the first time, which promises to be a more attractive alternative than lock-based parallel programming in terms of programmability and performance.
With these first-ever real systems come several open questions. Perhaps one of the most obvious is, "how does one debug a TM program that uses real hardware?" While prior research in this area exists, there are, to the best of our knowledge, no commercially-available TM debuggers and only a handful of research projects exploring such possibilities, many of which use simulated HTMs that may utilize unrealistic hardware. In this paper, we motivate the need for more than traditional and ad hoc debugging support. We then propose a novel record-and-replay system, based on existing research prototypes and demonstrate its usefulness by reviewing several use cases in TM programming, restricting use to real features in IBM and Intel’s HTMs.
Open Access Media
USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.
author = {Justin E. Gottschlich and Rob Knauerhase and Gilles Pokam},
title = {But How Do We Really Debug Transactional Memory Programs?},
booktitle = {5th USENIX Workshop on Hot Topics in Parallelism (HotPar 13)},
year = {2013},
address = {San Jose, CA},
url = {https://www.usenix.org/conference/hotpar13/workshop-program/presentation/gottschlich},
publisher = {USENIX Association},
month = jun
}
connect with us