Bulk operations performance: juggling external conditions

Aleksey Shipilev aleksey.shipilev at oracle.com
Wed Aug 1 05:29:28 PDT 2012

On 08/01/2012 04:16 PM, Doug Lea wrote:
> The remaining utilization issues seem to be in line with
> some of my in-progress suggestions for improvements that amount to
> (1) reducing the sequential bottlenecks in front of subtask
> generation (mainly via an alternative to Spliterator) and

Interesting. My tests use custom Splitterables which do not block during
split at all.

> (2) reducing the impact of GC stalls etc on worker availability
> (mainly by using CountedCompleters).

I see the issues about wasting threads on join()'s, seems to be
completely unrelated to GC. This is something fixable by
CountedCompleter. More in separate thread.

> Do you see any other systematic issues?

I'm trying to confirm some of them with precise tests. FWIW, this huge
experiment gives the high-level picture where to look for troubles, not
where the troubles really are. Stay tuned.


More information about the lambda-dev mailing list