Canvas: Isolated and Adaptive Swapping for Multi-Applications on Remote Memory
summary
Canvas isolates per-application swap data paths and builds a replacement swap system on Linux 5.5 that gives each workload dedicated swap partition, swap cache, prefetcher, and controlled RDMA bandwidth. It implements three concrete techniques: reservation-based swap entry allocation to avoid lock contention, a semantics-aware per-thread pattern prefetcher, and a two-dimensional RDMA scheduler. Evaluated on six cloud apps across 11 workload mixes, Canvas yields up to 3.5× throughput and reduces performance variation by ~7.4×.
AI-written summary · about
chapters (17)
- 0:00Intro
- 0:36Memory Challenge in Datacenters
- 0:58Remote Memory Systems
- 2:00Multi-Tenant Cloud on Remote Memory
- 2:17Kernel Swap Performs Poorly in Shared Settings
- 3:40Shared Swap Resources
- 4:28Mixed Access Patterns
- 5:04RDMA Bandwidth Competition
- 5:37Canvas Design: Holistic Isolation
- 5:56Isolation Enabled Adaptive Optimizations
- 9:03Remote Memory Management: Swap Out
- 10:51Adaptive Entry Allocator: Lock-Free Swap Out
- 11:13Adaptive Entry Allocator: Free Mappings
- 11:35Evaluation
- 12:05Results: Improved Throughput
- 12:37Results: Reduced Performance Variation
- 13:24Conclusion
related talks
17mDuhu: Shared Disaggregated Memory for Distributed Data Processing Frameworks
16mPreview: Cloud Computing
17mQuicksand: Harnessing Stranded Datacenter Resources with Granular Computing
19mRunD: A Lightweight Secure Container Runtime for High-density Deployment...
18mOctopus: Enhancing CXL Memory Pods via Sparse Topology
19mEnabling Big Memory workloads to run
15mApp Runtime Interfaces Update: CNBs, Puma and More
25mPreparing Apps for Dynamic Scaling
