Fix T85779: Cycles not using all threads when using OpenImageDenoise
The thread affinity setting in OIDN can break multithreading on some CPUs. While this leads to somewhat worse performance on CPUs that do work correctly, it's better than having some CPUs use only half the cores.
This commit is contained in:
parent
d6b54068d4
commit
abc3128011
@ -169,6 +169,7 @@ class OIDNDenoiseContext {
|
||||
OIDNPass oidn_color_access_pass = read_input_pass(oidn_color_pass, oidn_output_pass);
|
||||
|
||||
oidn::DeviceRef oidn_device = oidn::newDevice();
|
||||
oidn_device.set("setAffinity", false);
|
||||
oidn_device.commit();
|
||||
|
||||
/* Create a filter for denoising a beauty (color) image using prefiltered auxiliary images too.
|
||||
|
@ -64,6 +64,7 @@ class DenoiseFilter {
|
||||
BLI_mutex_lock(&oidn_lock);
|
||||
|
||||
device = oidn::newDevice();
|
||||
device.set("setAffinity", false);
|
||||
device.commit();
|
||||
filter = device.newFilter("RT");
|
||||
initialized_ = true;
|
||||
|
Loading…
Reference in New Issue
Block a user