Blender Git Commit Log

Git Commits -> Revision f7bac65

March 23, 2017, 23:13 (GMT)
Cycles Denoising: Remove tile overscan when using GPU rendering

Denoising a pixel requires access to the other pixels surrounding it. On the CPU, this is solved by waiting for the neighboring tiles to be rendered before the central tile is denoised.
On the GPU, it was handled by rendering larger tiles internally and discarding the overscan area after denoising. That saved a bit of memory, but wasted computation (with 256x256 tiles and a half-window of 8, 13% of rendered pixels were never actually seen).

Also, supporting overscan tiles made the code more complex. So, this commit removes the overscan code and uses the CPU approach on GPUs as well.

Commit Details:

Full Hash: f7bac653cfd32e44912d36c55785bea0dd04cde9
Parent Commit: 3af69a0
Lines Changed: +80, -140

8 Modified Paths:

/intern/cycles/blender/blender_session.cpp (+9, -14) (Diff)
/intern/cycles/device/device_cuda.cpp (+13, -12) (Diff)
/intern/cycles/device/device_denoising.cpp (+0, -20) (Diff)
/intern/cycles/device/device_denoising.h (+0, -1) (Diff)
/intern/cycles/render/buffers.cpp (+56, -70) (Diff)
/intern/cycles/render/buffers.h (+1, -8) (Diff)
/intern/cycles/render/session.cpp (+0, -13) (Diff)
/intern/cycles/render/tile.h (+1, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021