Making concurrent algorithms detectable

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

Abstract

Non-volatile memory (NVM) promises persistent main memory that remains correct despite loss of power. Since caches are expected to remain volatile, concurrent algorithms must be redesigned to ensure a consistent state after a system crash, and to continue the execution upon recovery. We give the first general construction to make any concurrent program persistent, and show that the persistent version is guaranteed to have at most a constant factor blow-up in both steps and contention. We also provide an optimized transformation for normalized lock-free data structures. We experimentally evaluate our transformation by comparing it to a persistent transactional memory, as well as a hand-tuned persistent algorithm. We show that our transformation's performance is reasonable given its generality.

Cite

CITATION STYLE

APA

Ben-David, N., Blelloch, G. E., Friedman, M., & Wei, Y. (2019). Making concurrent algorithms detectable. In Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP (pp. 419–420). Association for Computing Machinery. https://doi.org/10.1145/3293883.3299991

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