IEEE Transactions on Parallel and Distributed Systems · 2020 · 10 citations · 50 references
ComputingComputer EngineeringComputer ScienceFault ToleranceFault-tolerant ComputingFault-tolerant SystemsCache CoherenceConcurrency ControlFault-tolerant Storage SystemsMemory ConsistencyReliable Storage SystemsStorage ConsistencyConsistencyCrash ConsistencyHigh PerformanceLock-free AlgorithmsLock-free Data StructuresPersistent MemoryTransaction LoggingTransient States
In this article, we propose Failure-atomic Byte-addressable R-tree (FBR-tree) that leverages the byte-addressability, persistence, and high performance of persistent memory while guaranteeing the crash consistency. We carefully control the order of store and cacheline flush instructions and prevent any single store instruction from making an FBR-tree inconsistent and unrecoverable. We also develop a non-blocking lock-free range query algorithm for FBR-tree. Since FBR-tree allows read transactions to detect and ignore any transient inconsistent states, multiple read transactions can concurrently access tree nodes without using shared locks while other write transactions are making changes to them. Our performance study shows that FBR-tree successfully reduces the legacy logging overhead and the lock-free range query algorithm shows up to 2.6x higher query processing throughput than the shared lock-based crabbing concurrency protocol.
50
Maurice Herlihy · ACM Transactions on Programming Languages and Systems · 1991 · 1.8K citations · Full text
H.‐S. Philip Wong, Simone Raoux, Sang‐Bum Kim et al. · Proceedings of the IEEE · 2010 · 1.8K citations
Fosca Giannotti, Mirco Nanni, Fabio Pinelli et al. · 2007 · 1K citations
Computing, Data Science, Data Mining +14
Better I/O through byte-addressable, persistent memory
Jeremy Condit, Edmund B. Nightingale, Christopher Frost et al. · 2009 · 833 citations