Pith. sign in

REVIEW 1 cited by

Ready When You Are: Efficient Condition Variables via Delegated Condition Evaluation

Not yet reviewed by Pith; the record is open.

This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.

SPECIMEN: schema-true, not a live event

T0 review · schema-true

One-sentence machine reading of the paper's core claim.

pith:XXXXXXXX · record.json · timestamp

arxiv 2105.06961 v1 pith:KICI3SU6 submitted 2021-05-14 cs.DC

classification cs.DC
keywords conditionthreadsvariablesonlywakeupsconditionsevaluationfutile
verification ladder T0 review T1 audit T2 compute T3 formal
0 comments
read the original abstract

Multi-thread applications commonly utilize condition variables for communication between threads. Condition variables allow threads to block and wait until a certain condition holds, and also enable threads to wake up their blocked peers notifying them about a change to the state of shared data. Quite often such notifications are delivered to all threads, while only a small number of specific threads is interested in it. This results in so-called futile wakeups, where threads receiving the notification wake up and resume their execution only to realize that the condition they are waiting for does not hold and they need to wait again. Those wakeups cause numerous context switches, increase lock contention and cache pressure, translating into lots of wasted computing cycles and energy. In this work, we propose to delegate conditions on which threads are waiting to the thread sending notifications. This enables the latter to evaluate the conditions and send the notification(s) only to the relevant thread(s), practically eliminating futile wakeups altogether. Our initial evaluation of this idea shows promising results, achieving 3-4x throughput improvement over legacy condition variables.

Discussion (0). Continue with ORCID to comment.

Forward citations

Cited by 1 Pith paper

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score. Full citation record

  1. Semaphores Augmented with a Waiting Array

    cs.DC 2025-01 conditional novelty 5.0 of 10

    A ticket-based semaphore augmented with a waiting array, TWA-Semaphore, preserves FIFO admission while improving throughput over plain ticket semaphores in a microbenchmark.

Pith tools