BWoS: Formally Verified Block-based Work Stealing for Parallel Processing
Jiawei Wang, Bohdan Trach, Ming Fu, Diogo Behrens, Jonathan Schwender, Yutao Liu, Jitang Lei, Viktor Vafeiadis, Hermann Härtig, Haibo Chen
Abstract
Work stealing is a widely-used scheduling technique for parallel processing on multicore. Each core owns a queue of tasks and avoids idling by stealing tasks from other queues. Prior work mostly focuses on balancing workload among cores, disregarding whether stealing may adversely impact the owner's performance or hinder synchronization optimizations. Realworld industrial runtimes for parallel processing heavily rely on work-stealing queues for scalability, and such queues can become bottlenecks to their performance.
We present Block-based Work Stealing (BWoS), a novel and pragmatic design that splits per-core queues into multiple blocks. Thieves and owners rarely operate on the same blocks, greatly removing interferences and enabling aggressive optimizations on the owner's synchronization with thieves. Furthermore, BWoS enables a novel probabilistic stealing policy that guarantees thieves steal from longer queues with higher probability. In our evaluation, using BWoS improves performance by up to 1.25x in the Renaissance macrobenchmark when applied to Java G1GC, provides an average 1.26x speedup in JSON processing when applied to Go runtime, and improves maximum throughput of Hyper HTTP server by 1.12x when applied to Rust Tokio runtime. In microbenchmarks, it provides 8-11x better performance than state-of-theart designs. We have formally verified and optimized BWoS on weak memory models with a model-checking-based framework.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext cfc5cc6f-5c22-4e2e-a089-6ceb8087b09cCited by top-tier papers3
- Towards Unified Analysis of GPU ConsistencyHaining Tong, Natalia Gavrilenko, Hernán Ponce de León, Keijo HeljankoASPLOS 2024 · 5 citations
- Using Dynamically Layered Definite Releases for Verifying the RefFS File SystemMo Zou, Dong Du, Mingkai Dong, Haibo ChenOSDI 2024 · 4 citations
- SBB: Eliminating Centralized Bottlenecks in Userspace Network RuntimeKang Hu, Shuqi Dong, Chuandong Li, Ran Yi et al.OSDI 2026
Builds on8
- Overload Control for µs-scale RPCs with BreakwaterInho Cho, Ahmed Saeed, Joshua Fried, Seo Jin Park et al.OSDI 2020 · 61 citations
- Efficient Scheduling Policies for Microsecond-Scale TasksSarah McClure, Amy Ousterhout, Scott Shenker, Sylvia RatnasamyNSDI 2022 · 43 citations
- VSync: push-button verification and optimization for synchronization primitives on weak memory modelsJonas Oberhauser, Rafael Lourenco de Lima Chehab, Diogo Behrens, Ming Fu et al.ASPLOS 2021 · 40 citations
- Aequitas: admission control for performance-critical RPCs in datacentersYiwen Zhang, Gautam Kumar, Nandita Dukkipati, Xian Wu et al.SIGCOMM 2022 · 30 citations
- Armada: low-effort verification of high-performance concurrent programsJacob R. Lorch, Yixuan Chen, Manos Kapritsos, Bryan Parno et al.PLDI 2020 · 25 citations
Related papers
- Multi-queues can be state-of-the-art priority schedulersAnastasiia Postnikova, Nikita Koval, Giorgi Nadiradze, Dan AlistarhPPoPP 2022 · 18 citations
- Efficiently Supporting Dynamic Task Parallelism on Heterogeneous Cache-Coherent SystemsMoyang Wang, Tuan Ta, Lin Cheng, Christopher BattenISCA 2020 · 11 citations
- Work Packets: A New Abstraction for GC Software Engineering, Optimization, and InnovationWenyu Zhao, Stephen M. Blackburn, Kathryn S. McKinleyOOPSLA 2025 · 3 citations
- BBQ: A Block-based Bounded Queue for Exchanging Data and ProfilingJiawei Wang, Diogo Behrens, Ming Fu, Lilith Oberhauser et al.USENIX ATC 2022
- How to Steal CPU Idle Time When Synchronous I/O Mode Becomes PromisingChun-Feng Wu, Yuan-Hao Chang, Ming-Chang Yang, Tei-Wei KuoDAC 2024 · 5 citations
