Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
reactor: avoid issuing systemwide memory barriers in parallel
Before going to sleep, a reactor must force a memory barrier across the entire system, so that other reactors can tell it is asleep and wake it up when necessary. This operation, however, is slow on large machines, and very unscalable, so that if many reactors fall asleep concurrently, the result is quite long latencies, in the tens of milliseconds. Fix by noticing that another reactor is falling asleep, and aborting the sleep attempt in that case. Message-Id: <1460657435-22990-3-git-send-email-avi@scylladb.com>
- Loading branch information