Blender Git Commits

Blender Git "temp-cycles-tbb" branch commits.

June 6, 2020, 19:02 (GMT)
Cycles: use TBB for task pools and task scheduler

No significant performance improvement is expected, but it means we have a
single thread pool throughout Blender. And it should make adding more
parallellization in the future easier.

After previous refactoring commits this is basically a drop-in replacement.
One difference is that the task pool had a mechanism for scheduling tasks to
the front of the queue to minimize memory usage. TBB has a smarter algorithm
to balance depth-first and breadth-first scheduling of tasks and we assume that
removes the need to manually provide hints to the scheduler.
June 6, 2020, 19:01 (GMT)
Cleanup: remove task pool stop() and finished()
June 6, 2020, 19:01 (GMT)
Cleanup: use lambdas instead of functors for task pools, remove threadid
June 6, 2020, 19:01 (GMT)
Cycles: make TBB a required library dependency, and use in a few places

Now that the rest of Blender also relies on TBB, no point in maintaining custom
code for paraller_for and thread local storage.
June 6, 2020, 19:00 (GMT)
Cleanup: minor refactoring around DeviceTask
June 6, 2020, 19:00 (GMT)
Cleanup: use move semantics for task pool functions
June 6, 2020, 18:59 (GMT)
Build: upgrade from C++11 to C++14, matching VFX reference platform
By: Miika HämäläinenLast update: Nov-07-2014 14:18 MiikaHweb | 2003-2021