It's a JMH benchmark of the capability of several Java queues to process tasks in parallel, Reactive to:
* heavy lifting: a few (eg, 100-200) larger tasks, no latency, no back pressure
* waiting: efficiency of a few small tasks with latency, no back pressure
* mixed load: many small tasks and a few large ones interspersed, no latency, no back pressure
* back pressure: many small tasks, with back pressure which may induce latency
* throughput: many small tasks, no latency, no back pressure
The data sources are unsized iterators, and the payloads are scrabble scores (small tasks) and repeated sha-256 hashes (large tasks). Implementations include Conversant, JCTools, Kilim, Quasar, RxJava, the fork join pool, and Java 8 streams.
It's based on Jose Paumard's kata from Devoxx 2015 and David Karnok's (RxJava) refinements. I've been looking for a decent reactive benchmark for a while, and the kata [got mentioned](https://www.reddit.com/r/java/comments/cacgmu/choosing_a_rea...) in this subreddit a couple months ago so I added in the various conditions and did some runs. More details in the readme and the full JMH output is available in [the release](https://github.com/nqzero/reactive-bench/releases/tag/jmh-re...). Hoping for contributions of tuning, new implementations (esp Akka and Vert.x), new modes (or just ideas for new modes), etc.