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
摘要
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.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper3
- Towards Unified Analysis of GPU ConsistencyHaining Tong, Natalia Gavrilenko, Hernán Ponce de León, Keijo HeljankoASPLOS 2024 · 被引用 5 次
- Using Dynamically Layered Definite Releases for Verifying the RefFS File SystemMo Zou, Dong Du, Mingkai Dong, Haibo ChenOSDI 2024 · 被引用 4 次
- SBB: Eliminating Centralized Bottlenecks in Userspace Network RuntimeKang Hu, Shuqi Dong, Chuandong Li, Ran Yi 等OSDI 2026
它引用的顶会 Paper8
- Overload Control for µs-scale RPCs with BreakwaterInho Cho, Ahmed Saeed, Joshua Fried, Seo Jin Park 等OSDI 2020 · 被引用 61 次
- Efficient Scheduling Policies for Microsecond-Scale TasksSarah McClure, Amy Ousterhout, Scott Shenker, Sylvia RatnasamyNSDI 2022 · 被引用 43 次
- VSync: push-button verification and optimization for synchronization primitives on weak memory modelsJonas Oberhauser, Rafael Lourenco de Lima Chehab, Diogo Behrens, Ming Fu 等ASPLOS 2021 · 被引用 40 次
- Aequitas: admission control for performance-critical RPCs in datacentersYiwen Zhang, Gautam Kumar, Nandita Dukkipati, Xian Wu 等SIGCOMM 2022 · 被引用 30 次
- Armada: low-effort verification of high-performance concurrent programsJacob R. Lorch, Yixuan Chen, Manos Kapritsos, Bryan Parno 等PLDI 2020 · 被引用 25 次
相关 Paper
- Multi-queues can be state-of-the-art priority schedulersAnastasiia Postnikova, Nikita Koval, Giorgi Nadiradze, Dan AlistarhPPoPP 2022 · 被引用 18 次
- Efficiently Supporting Dynamic Task Parallelism on Heterogeneous Cache-Coherent SystemsMoyang Wang, Tuan Ta, Lin Cheng, Christopher BattenISCA 2020 · 被引用 11 次
- Work Packets: A New Abstraction for GC Software Engineering, Optimization, and InnovationWenyu Zhao, Stephen M. Blackburn, Kathryn S. McKinleyOOPSLA 2025 · 被引用 3 次
- BBQ: A Block-based Bounded Queue for Exchanging Data and ProfilingJiawei Wang, Diogo Behrens, Ming Fu, Lilith Oberhauser 等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 次
