Enabling Efficient RDMA-based Synchronous Mirroring of Persistent Memory Transactions

10/22/2018
by   Arash Tavakkol, et al.
0

Synchronous Mirroring (SM) is a standard approach to building highly-available and fault-tolerant enterprise storage systems. SM ensures strong data consistency by maintaining multiple exact data replicas and synchronously propagating every update to all of them. Such strong consistency provides fault tolerance guarantees and a simple programming model coveted by enterprise system designers. For current storage devices, SM comes at modest performance overheads. This is because performing both local and remote updates simultaneously is only marginally slower than performing just local updates, due to the relatively slow performance of accesses to storage in today's systems. However, emerging persistent memory and ultra-low-latency network technologies necessitate a careful re-evaluation of the existing SM techniques, as these technologies present fundamentally different latency characteristics compared than their traditional counterparts. In addition to that, existing low-latency network technologies, such as Remote Direct Memory Access (RDMA), provide limited ordering guarantees and do not provide durability guarantees necessary for SM. To evaluate the performance implications of RDMA-based SM, we develop a rigorous testing framework that is based on emulated persistent memory. Our testing framework makes use of two different tools: (i) a configurable microbenchmark and (ii) a modified version of the WHISPER benchmark suite, which comprises a set of common cloud applications. Using this framework, we find that recently proposed RDMA primitives, such as remote commit, provide correctness guarantees, but do not take full advantage of the asynchronous nature of RDMA hardware. To this end, we propose new primitives enabling efficient and correct SM over RDMA, and use these primitives to develop two new techniques delivering high-performance SM of persistent memories.

READ FULL TEXT
research
04/02/2019

Persistent Memory I/O Primitives

I/O latency and throughput is one of the major performance bottlenecks f...
research
05/22/2018

Hardware Transactional Persistent Memory

Emerging Persistent Memory technologies (also PM, Non-Volatile DIMMs, St...
research
12/26/2020

Persistence and Synchronization: Friends or Foes?

Emerging non-volatile memory (NVM) technologies promise memory speed byt...
research
04/12/2021

A High-Performance Persistent Memory Key-Value Store with Near-Memory Compute

MCAS (Memory Centric Active Storage) is a persistent memory tier for hig...
research
10/18/2022

NearPM: A Near-Data Processing System for Storage-Class Applications

Persistent Memory (PM) technologies enable program recovery to a consist...
research
12/15/2019

Faster than Flash: An In-Depth Study of System Challenges for Emerging Ultra-Low Latency SSDs

Emerging storage systems with new flash exhibit ultra-low latency (ULL) ...
research
08/21/2019

MOD: Minimally Ordered Durable Datastructures for Persistent Memory

Persistent Memory (PM) makes possible recoverable applications that can ...

Please sign up or login with your details

Forgot password? Click here to reset