Transactional pointers: Experiences with HTM-based reference counting in C++

0Citations
Citations of this article
5Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The most popular programming languages, such as C++ or Java, have libraries and data structures designed to automatically address concurrency hazards in order to run on multiple threads. In particular, this trend has also been adopted in the memory management domain. However, automatic concurrent memory management also comes at a price, leading sometimes to noticeable overhead. In this paper, we experiment with C++ smart pointers and their automatic memorymanagement technique based on reference counting. More precisely, we study how we can use hardware transactional memory (HTM) to avoid costly and sometimes unnecessary atomic operations. Our results suggest that replacing the systematic counting strategy with HTM could improve application performance in certain scenarios, such as concurrent linked-list traversal.

Cite

CITATION STYLE

APA

Carpen-Amarie, M., Dice, D., Thomas, G., & Felber, P. (2016). Transactional pointers: Experiences with HTM-based reference counting in C++. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9944 LNCS, pp. 102–116). Springer Verlag. https://doi.org/10.1007/978-3-319-46140-3_8

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free