MOD
Swapnil Haria, Mark D. Hill, Michael M. Swift
Abstract
Persistent Memory (PM) makes possible recoverable applications that can preserve application progress across system reboots and power failures. Actual recoverability requires careful ordering of cacheline flushes, currently done in two extreme ways. On one hand, expert programmers have reasoned deeply about consistency and durability to create applications centered on a single custom-crafted durable datastructure. On the other hand, less-expert programmers have used software transaction memory (STM) to make atomic one or more updates, albeit at a significant performance cost due largely to ordered log updates.
Topics & Concepts
Computer scienceConsistency (knowledge bases)Database transactionSoftwareSoftware engineeringReliability engineeringProgramming languageArtificial intelligenceEngineeringDistributed systems and fault toleranceParallel Computing and Optimization TechniquesCloud Computing and Resource Management