Fix T60145: Cycles resets manually set affinity
authorSergey Sharybin <sergey.vfx@gmail.com>
Fri, 11 Jan 2019 16:55:36 +0000 (17:55 +0100)
committerSergey Sharybin <sergey.vfx@gmail.com>
Fri, 11 Jan 2019 16:55:36 +0000 (17:55 +0100)
commit48506a3431fb5b4396f7cf2d9c6a8a208b3c0df5
tree4de3ac716082d7f7266c987cd8b470af339f0644
parentff44a9957ee553a71585e66ffea615503075313a
Fix T60145: Cycles resets manually set affinity

This change brings back old original logic which was checking
whether worker threads do fit into an active CPU group. But
it does it a bit smarter now and is also checking affinity
within that group. This way Cycles will use all threads on a
Threadripper2 CPU if it's set to automatic number of threads,
but on another hand will not change affinity if user requested
16 threads and changed Blender affinity.
intern/cycles/util/util_system.cpp
intern/cycles/util/util_system.h
intern/cycles/util/util_task.cpp