From f278e4138cbd4ba04f0cab99fe3b1407fa573b34 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Fri, 8 Mar 2024 14:56:32 +0100 Subject: [PATCH] Fix #118016: OpenImageDenoise not using GPU for CPU + GPU render Thanks to Alaska for pointing out the cause of the problem. --- intern/cycles/integrator/denoiser_oidn_gpu.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/intern/cycles/integrator/denoiser_oidn_gpu.cpp b/intern/cycles/integrator/denoiser_oidn_gpu.cpp index 69a1b818525..bc54c3d7edc 100644 --- a/intern/cycles/integrator/denoiser_oidn_gpu.cpp +++ b/intern/cycles/integrator/denoiser_oidn_gpu.cpp @@ -30,6 +30,14 @@ CCL_NAMESPACE_BEGIN bool OIDNDenoiserGPU::is_device_supported(const DeviceInfo &device) { + if (device.type == DEVICE_MULTI) { + for (const DeviceInfo &multi_device : device.multi_devices) { + if (multi_device.type != DEVICE_CPU && is_device_supported(multi_device)) { + return true; + } + } + } + int device_type = OIDN_DEVICE_TYPE_DEFAULT; switch (device.type) { # ifdef OIDN_DEVICE_SYCL