Characterizing and Optimizing Remote Persistent Memory with RDMA and NVM
summary
Systematically measures RDMA accessing real production NVM (Intel 3D XPoint) and extracts nine concrete optimization hints across configuration (e.g. disable DDIO to avoid slow random NVM writes), access pattern (e.g. use 64-byte granularity to avoid PCI partial writes) and RDMA-aware techniques (e.g. combine double-batching and outstanding requests to achieve a one-round-trip persistent write). Applies optimizations to DrTM+H and Octopus, raising throughput up to 2.4X while showing some hints (like h3) can degrade performance depending on workload.
AI-written summary · about
chapters (10)
- 0:00Intro
- 0:26RPM*: a key pillar in datacenter systems The key building block in modern datacenter systems
- 1:38Challenge: how to integrate RDMA w/ NVM? Good news: RDMA can directly access NVM as DRAM Problem: the performance is poor w/o proper optimizations Leads to inefficiency in existing RDMA-NVM systems
- 5:39Disable DDIO for one-sided RDMA DDIO: Data Direct I/O, one-sided RDMA first write to LLC However, LLC flushes to NVM in a random way & NVM has poor random access performance
- 6:51use 64B for small writes (i.e., 256B) How to saturate NVM processing rate? • Avoid read-modify-write le.g., PCle partial write One-sided RDMA should use 64B to avoid PCle partial write
- 7:32optimization hints (H1-H9) Focuses on remote persistent memory write
- 7:42H9: Use OR & Doorbell for persistent write Problem: persistent one-sided RDMA needs 2 RTTU Applying RDMA-aware optimizations can reduce to 1 RTT Outstanding Request ORII
- 8:26How to apply hints to existing systems? We use two systems as case studies Leads to 1.2-2.4x performance boost
- 8:39Case study: DrTM+H A distributed database designed for RDMA & NVM
- 9:56Summary & hints to future hardware designers 9 optimizations to better leverage RDMA-NVM
related talks
23mTeRM: Extending RDMA-Attached Memory with SSD
14mUnderstanding RDMA Microarchitecture Resources for Performance Isolation
18mRDMA is Turing complete, we just did not know it yet!
15mCollie: Finding Performance Anomalies in RDMA Subsystems
15mReplicating Persistent Memory Key-Value Stores with Efficient RDMA Abstraction
16mOneSidedMW: Managing Disaggregated Memory Efficiently, Flexibly, and Securely with RNIC
19mFast Distributed Transactions for RDMA-based Disaggregated Memory
06mRDMA Programming Design and Case Studies - For Better Performance Distributed
