DRust: Language-Guided Distributed Shared Memory with Fine Granularity, Full...
Talkat 18th USENIX Symposium on Operating Systems Design and Implementation (OSDI '24) · 2024-07-10..07-12·
summary
DRust is a Rust-based DSM that exposes Rust’s ownership and borrow semantics to the runtime and uses an ownership-based coherence protocol to avoid cross-server invalidations. It moves mutated objects to new global addresses so readers automatically miss stale caches (move-to-new-address invalidation), uses a local cache hashmap to avoid duplicate copies, and eliminates coherence roundtrips. Evaluation on datacenter workloads shows up to 2.64× and 29.16× throughput improvements over GAM and Grappa respectively and much better server-side scaling.
AI-written summary · about
chapters (9)
- 0:00DRust introduction
- 0:44DSM resurgence challenges
- 2:12GAM memory coherence
- 3:39Rust semantics
- 5:46Rust ownership model
- 8:12Rust semantics for coherence
- 11:45DRust memory access
- 14:14DRust architecture evaluation
- 14:58Key insights future
related talks
17mDuhu: Shared Disaggregated Memory for Distributed Data Processing Frameworks
14mA Refinement Methodology for Distributed Programs in Rust
25mStretch: A Fault-Driven DSM Runtime for Distributed Multithreaded Applications
34mUsing CRDTs Beyond Text Editors
12mConcordia: Distributed Shared Memory with In-Network Cache Coherence
19mFast Distributed Transactions for RDMA-based Disaggregated Memory
40mProperty-testing async code in Rust to build reliable distributed systems
12mOwnership: A Distributed Futures System for Fine-Grained Tasks
