OneFile: A Wait-Free Persistent Transactional Memory
- 1. Cisco Systems
- 2. University of Neuchatel
- 3. EPFL
Description
A persistent transactional memory (PTM) library provides an easy-to-use interface to programmers for using byte-addressable non-volatile memory (NVM). Previously proposed PTMs have, so far, been blocking. We present OneFile, the first wait-free PTM with integrated wait-free memory reclamation. We have designed and implemented two variants of the OneFile, one with lock-free progress and the other with bounded wait-free progress. We additionally present software transactional memory (STM) implementations of the lock-free and wait-free algorithms targeting volatile memory. Each of our PTMs and STMs is implemented as a single C++ file with ~1,000 lines of code, making them versatile to use. Equipped with these PTMs and STMs, non-expert developers can design and implement their own lock-free and wait-free data structures on NVM, thus making lock-free programming accessible to common software developers.
Files
OneFile-zenodo.pdf
Files
(545.8 kB)
Name | Size | Download all |
---|---|---|
md5:db747f634acf3b1fcb53aa412d5c89d8
|
545.8 kB | Preview Download |