Skip to content

Add EventCount implementation #21271

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: devel
Choose a base branch
from
Open

Add EventCount implementation #21271

wants to merge 3 commits into from

Conversation

mpoeter
Copy link
Contributor

@mpoeter mpoeter commented Aug 28, 2024

Scope & Purpose

Initially I built this event count implementation for the new WorkstealingScheduler with a single thread pool, but it can probably also come in handy in other cases.

EventCount allows to wait for arbitrary predicates in non-blocking algorithms. Think of condition variable, but the wait predicate does not need to be protected by a mutex.

https://www.1024cores.net/home/lock-free-algorithms/eventcounts

This implementation is heavily inspired by the one in the Eigen library.

  • 🍕 New feature

Checklist

  • Tests
    • C++ Unit tests

@mpoeter mpoeter added this to the devel milestone Aug 28, 2024
@cla-bot cla-bot bot added the cla-signed label Aug 28, 2024
@mpoeter mpoeter requested review from jbajic and maierlars August 28, 2024 14:31
@maierlars maierlars removed their request for review September 26, 2024 14:09
@KVS85 KVS85 requested review from kvahed and removed request for jbajic February 21, 2025 11:22
@KVS85 KVS85 assigned jbajic and unassigned mpoeter Feb 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants