Skip to content

Slightly simplify ForkJoin code, and make sure the test is actually run.

This change contains two (breaking) functional/API changes:

  1. The task function passed to ParallelFor and ParallelForAsync must be a binary functor f(begin, end).
  2. ParallelForAsync calls the done() functor exactly once when all tasks are completed. Calling it for every task could amount to a significant overhead in some cases.

This also fixes an out-of-bounds bug in the midpoint computation, caught by @wwkong .

Edited by Rasmus Munk Larsen

Merge request reports

Loading