Blender Git Loki
Git Commits -> Revision ea4ce9e
Revision ea4ce9e by Brecht Van Lommel (master) April 24, 2012, 11:43 (GMT) |
Cycles: centralized task scheduler for multithreading, which is basically the CPU device threading code wrapped into something reusable. Basic idea is that there is a single TaskScheduler that keeps a pool of threads, one for each core. Other places in the code can then create a TaskPool that they can drop Tasks in to be executed by the scheduler, and wait for them to complete or cancel them early. |
Commit Details:
Full Hash: ea4ce9e4ea88c7374e6633c6407812af0e2e6170
SVN Revision: 45916
Parent Commit: de07f51
Lines Changed: +606, -231
2 Added Paths:
/intern/cycles/util/util_task.cpp (+223, -0) (View)
/intern/cycles/util/util_task.h (+122, -0) (View)
/intern/cycles/util/util_task.h (+122, -0) (View)
9 Modified Paths:
/intern/cycles/device/device.cpp (+0, -9) (Diff)
/intern/cycles/device/device.h (+2, -2) (Diff)
/intern/cycles/device/device_cpu.cpp (+25, -38) (Diff)
/intern/cycles/device/device_multi.cpp (+4, -3) (Diff)
/intern/cycles/render/session.cpp (+5, -0) (Diff)
/intern/cycles/util/CMakeLists.txt (+2, -0) (Diff)
/intern/cycles/util/util_math.h (+81, -24) (Diff)
/intern/cycles/util/util_thread.h (+0, -127) (Diff)
/intern/cycles/util/util_types.h (+142, -28) (Diff)
/intern/cycles/device/device.h (+2, -2) (Diff)
/intern/cycles/device/device_cpu.cpp (+25, -38) (Diff)
/intern/cycles/device/device_multi.cpp (+4, -3) (Diff)
/intern/cycles/render/session.cpp (+5, -0) (Diff)
/intern/cycles/util/CMakeLists.txt (+2, -0) (Diff)
/intern/cycles/util/util_math.h (+81, -24) (Diff)
/intern/cycles/util/util_thread.h (+0, -127) (Diff)
/intern/cycles/util/util_types.h (+142, -28) (Diff)