ROLEX: A Scalable RDMA-oriented Learned Key-Value Store for Disaggregated Memory Systems
summary
ROLEX is a key-value store that pairs retraining-decoupled learned index models with RDMA so compute nodes perform updates via one-sided RDMA verbs while memory nodes asynchronously retrain models. It uses fixed-size leaf regions, leaf tables and synonym leaves linked by pointers, atomic FAA for lock-free leaf allocation, and model regions to map keys to physical addresses. Implemented and evaluated on YCSB and real traces, ROLEX improves dynamic-workload throughput up to 2.2× versus prior RDMA schemes and is open-source.
AI-written summary · about
chapters (14)
- 0:00Intro
- 0:29Disaggregated Memory Systems (DMS)
- 4:04Computing Bottleneck
- 4:27Overloaded Bandwidth
- 4:55Inconsistency Issues
- 7:31Memory Pool Stores Data
- 8:21Learned Model - Piecewise Linear Regression Models
- 8:45Learned Model - Leaf Table
- 11:25Asynchronous Retraining - Consistency Guarantee
- 12:12Experimental Setup
- 12:39Performance on YCSB
- 13:09Scale with CPU cores on compute nodes
- 13:25Training Latency
- 13:43Memory Overhead
related talks
15mReplicating Persistent Memory Key-Value Stores with Efficient RDMA Abstraction
15mOne-sided RDMA-Conscious Extendible Hashing for Disaggregated Memory
14mSMART: A High-Performance Adaptive Radix Tree for Disaggregated Memory
19mBuilding KVStore for ML Workloads
12mDirect Access, High-Performance Memory Disaggregation with DirectCXL
20mEnabling Machine Learning through Real-Time Data Processing
23mBodega: Localized Linearizable Reads at Anywhere Anytime via Roster Leases
17mDuhu: Shared Disaggregated Memory for Distributed Data Processing Frameworks
