Cycles Denoiser: Allocate a single temporary buffer for the entire denoising process
authorLukas Stockner <lukas.stockner@freenet.de>
Sat, 25 Aug 2018 19:19:44 +0000 (12:19 -0700)
committerLukas Stockner <lukas.stockner@freenet.de>
Sat, 25 Aug 2018 19:23:52 +0000 (12:23 -0700)
commit94efc651d40fe62417b605e2f400fd364fb0d8ef
tree27e02bd43309f6f4a213ee94fcbfb75828cf1d50
parent60a5ba265cbda5293a21eaeab1d65ba155d66e03
Cycles Denoiser: Allocate a single temporary buffer for the entire denoising process

With small tiles, the repeated allocations on GPUs can actually slow down the denoising quite a lot.
Allocating the buffer just once reduces rendertime for the default cube with 16x16 tiles and denoising on a mobile 1050 from 22.7sec to 14.0sec.
intern/cycles/device/device_cpu.cpp
intern/cycles/device/device_cuda.cpp
intern/cycles/device/device_denoising.cpp
intern/cycles/device/device_denoising.h
intern/cycles/device/opencl/opencl_base.cpp