Blender Git Commit Log

Git Commits -> Revision 9ef272b

Revision 9ef272b by Jeroen Bakker (master)
May 25, 2020, 10:38 (GMT)
Task: Graph Flow Task Scheduling

Add TBB::flow graph scheduling to BLI_task.

Using flow graphs, a graph of nodes (tasks) and links can be defined.
Work can flow though the graph. During this process the execution of the nodes will be
scheduled among the available threads.

We are planning to use this to improve the threading in the draw manager.

The implemented API is still limited it only supports sequential flows. Joins and buffers
are not supported. We could eventually support them as part of an CPP API. These features
from uses compile time templates and are hard to make a clean C-API for this.

Reviewed By: Sergey Sharybin, Brecht van Lommel

Differential Revision: https://developer.blender.org/D7578

Commit Details:

Full Hash: 9ef272bae31931fe9afc0c037259fd936540ae0b
Parent Commit: 87e9557
Lines Changed: +427, -0

2 Added Paths:

/source/blender/blenlib/intern/task_graph.cc (+161, -0) (View)
/tests/gtests/blenlib/BLI_task_graph_test.cc (+188, -0) (View)

3 Modified Paths:

/source/blender/blenlib/BLI_task.h (+76, -0) (Diff)
/source/blender/blenlib/CMakeLists.txt (+1, -0) (Diff)
/tests/gtests/blenlib/CMakeLists.txt (+1, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021