Greg Wilkins 2b227f121e Issue #3550
I have modified the JMH benchmark to look at latency (by measuring throughput) for executing a job with low, medium and high concurrency.     It looks like the JREs threadpool is not so bad in some load ranges, but once things get busy we are still a bit better.   No significant difference is seen between previous QTP impl and the one in this PR.

```

Benchmark                     (size)  (type)   Mode  Cnt       Score        Error  Units
ThreadPoolBenchmark.testFew      200     ETP  thrpt    3  129113.271 ±  10821.235  ops/s
ThreadPoolBenchmark.testFew      200     QTP  thrpt    3  122970.794 ±   8702.327  ops/s
ThreadPoolBenchmark.testFew      200     QTP+ thrpt    3  121408.662 ±  12420.318  ops/s

ThreadPoolBenchmark.testSome     200     ETP  thrpt    3  277400.574 ±  34433.710  ops/s
ThreadPoolBenchmark.testSome     200     QTP  thrpt    3  244056.673 ±  60118.319  ops/s
ThreadPoolBenchmark.testSome     200     QTP+ thrpt    3  240686.913 ±  43104.941  ops/s

ThreadPoolBenchmark.testMany     200     ETP  thrpt    3  679336.308 ± 157389.044  ops/s
ThreadPoolBenchmark.testMany     200     QTP  thrpt    3  704502.083 ±  15624.325  ops/s
ThreadPoolBenchmark.testMany     200     QTP+ thrpt    3  708220.737 ±   3254.264  ops/s

```

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-05-17 15:35:18 +02:00
..