Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht van Lommel <brechtvanlommel@gmail.com>2014-05-26 15:40:16 +0400
committerBrecht van Lommel <brechtvanlommel@gmail.com>2014-05-26 15:51:11 +0400
commit0075efc4d201da992d590ef6c6462cd957955068 (patch)
tree875f90577f22120f09b45d5770a22b1c083ddaba /intern/cycles/device/device_cpu.cpp
parent3b4f792ce102f5c892e4108c19512dd3b9968335 (diff)
Fix T40306: cycles baking not distributing work among CPU cores well.
Diffstat (limited to 'intern/cycles/device/device_cpu.cpp')
-rw-r--r--intern/cycles/device/device_cpu.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/intern/cycles/device/device_cpu.cpp b/intern/cycles/device/device_cpu.cpp
index c9cc7592028..b0739dd20b4 100644
--- a/intern/cycles/device/device_cpu.cpp
+++ b/intern/cycles/device/device_cpu.cpp
@@ -452,7 +452,11 @@ public:
{
/* split task into smaller ones */
list<DeviceTask> tasks;
- task.split(tasks, TaskScheduler::num_threads());
+
+ if(task.type == DeviceTask::SHADER)
+ task.split(tasks, TaskScheduler::num_threads(), 256);
+ else
+ task.split(tasks, TaskScheduler::num_threads());
foreach(DeviceTask& task, tasks)
task_pool.push(new CPUDeviceTask(this, task));