~/talk

BBQ: A Block-based Bounded Queue for Exchanging Data and Profiling

Talkat USENIX ATC '22 · 2022-07-11..07-13· [concurrency]
links:none on file
links:none on file
links:none on file
name:Ming Fu
links:none on file
links:none on file
links:none on file
links:none on file
name:Geng Chen
links:none on file
name:Geng Chen
links:none on file
links:none on file
slides:none on file

BBQ implements a block-based ringbuffer that splits the buffer into blocks so producers and consumers avoid enq‑deq contention when they operate on different blocks, using per-block entry head/tail plus allocated/produced counters to allow out‑of‑order completion without blocking. It uses scalable atomics like fetch-and-add, moves the slower block-head update rarely, and is verified with model‑checking tools (gmc/Dartagnan), which uncovers three weak‑memory bugs during development. Microbenchmarks show 11.3x–42.4x and real workloads up to 1.5x/50.5x/11.1x improvements versus Linux/DPDK/io_uring/Disruptor.

AI-written summary · about

  1. 0:00Intro
  2. 1:55Story 1: Tracing overhead and operation interference
  3. 3:59Interference sources - Existing work
  4. 6:24Story 2: Oversubscription and out-of-order operations
  5. 8:40Migrating from x86 to Arm
  6. 11:23How do people develop for WMM?
  7. 16:10Dealing with out-of-order operations
  8. 18:24Correctness on WMMs with practical verification
  9. 20:40DPDK Test Suite (DTS) - Multiprocess benchmark
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.