DORADD: Deterministic Parallel Execution in the Era of Microsecond-Scale Computing
Zhengqing Liu, Musa Unal, Matthew J. Parkinson, Marios Kogias
Abstract
Deterministic parallelism is a key building block for distributed and fault-tolerant systems that offers substantial performance benefits while guaranteeing determinism. By studying existing deterministically parallel systems (DPS), we identify certain design pitfalls, such as batched execution and inefficient runtime synchronization, that preclude them from meeting the demands of 𝜇𝑠-scale and high-throughput distributed systems deployed in modern datacenters.
We present DORADD, a deterministically parallel runtime with low latency and high throughput, designed for modern datacenter services. DORADD introduces a hybrid scheduling scheme that effectively decouples request dispatching from execution. It employs a single dispatcher to deterministically construct a dynamic dependency graph of incoming requests and worker pools that can independently execute requests in a work-conserving and synchronization-free manner. Furthermore, DORADD overcomes the single-dispatcher throughput bottleneck based on core pipelining.
We use DORADD to build an in-memory database and compare it with Caracal, the current state-of-the-art deterministic database, via the YCSB and TPC-C benchmarks. Our evaluation shows up to 2.5× better throughput and more than 150× and 300× better tail latency in non-contended and contended cases, respectively. We also compare DO-RADD with Caladan, the state-of-the-art non-deterministic remote procedure call (RPC) scheduler, and demonstrate that determinism in DORADD does not incur any performance overhead.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers1
Ask how each one uses itBuilds on19
- Caladan: Mitigating Interference at Microsecond TimescalesJoshua Fried, Zhenyuan Ruan, Amy Ousterhout, Adam BelayOSDI 2020 · 213 citations
- Microsecond Consensus for Microsecond ApplicationsMarcos K. Aguilera, Naama Ben-David, Rachid Guerraoui, Virendra J. Marathe et al.OSDI 2020 · 73 citations
- HovercRaft: achieving scalability and fault-tolerance for microsecond-scale datacenter servicesMarios Kogias, Edouard BugnionEuroSys 2020 · 52 citations
- Block-STM: Scaling Blockchain Execution by Turning Ordering Curse to a Performance BlessingRati Gelashvili, Alexander Spiegelman, Zhuolun Xiang, George Danezis et al.PPoPP 2023 · 49 citations
- When Idling is Ideal: Optimizing Tail-Latency for Heavy-Tailed Datacenter Workloads with PerséphoneHenri Maxime Demoulin, Joshua Fried, Isaac Pedisich, Marios Kogias et al.SOSP 2021 · 39 citations
Related papers
- Caracal: Contention Management with Deterministic Concurrency ControlDai Qin, Angela Demke Brown, Ashvin GoelSOSP 2021 · 37 citations
- Don't Look Back, Look into the Future: Prescient Data Partitioning and Migration for Deterministic Database SystemsYu-Shan Lin, Ching Tsai, Tz-Yu Lin, Yun-Sheng Chang et al.SIGMOD 2021 · 17 citations
- Achieving Microsecond-Scale Tail Latency Efficiently with Approximate Optimal SchedulingRishabh R. Iyer, Musa Unal, Marios Kogias, George CandeaSOSP 2023 · 17 citations
- Integrating Non-Volatile Main Memory in a Deterministic DatabaseYu Chen Wang, Angela Demke Brown, Ashvin GoelEuroSys 2023 · 5 citations
- When Private Blockchain Meets Deterministic DatabaseZiliang Lai, Chris Liu, Eric LoSIGMOD 2023 · 22 citations
