Blender Git Commit Log

Git Commits -> Revision e8a6157

Revision e8a6157 by Sergey Sharybin (cycles-x)
April 15, 2021, 10:54 (GMT)
Cycles: Implement early stopping for adaptive sampling

Stop scheduling path tracing jobs one all pixels did converge.
Since the convergence check is done for the entire big tile it
is not that visible with regular noise level settings and number
of samples. However, still feels like this is proper thing to do,
especially for the idea of gradually decreasing error threshold
for the viewport rendering.

For the GPU there is a single int memory allocated for every
invocation of convergence check kernel. Not sure if it gives
any measurable difference and whether we'd better avoid such
tiny allocations.

Commit Details:

Full Hash: e8a6157657049d90d2d1a5d918c2dd2620599a34
Parent Commit: 3dcb501
Lines Changed: +122, -44

13 Modified Paths:

/intern/cycles/device/cpu/kernel.h (+3, -3) (Diff)
/intern/cycles/integrator/path_trace.cpp (+10, -3) (Diff)
/intern/cycles/integrator/path_trace.h (+2, -2) (Diff)
/intern/cycles/integrator/path_trace_work.h (+3, -1) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.cpp (+17, -11) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.cpp (+17, -4) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.h (+1, -1) (Diff)
/intern/cycles/integrator/render_scheduler.cpp (+26, -1) (Diff)
/intern/cycles/integrator/render_scheduler.h (+7, -1) (Diff)
/intern/cycles/kernel/device/cpu/kernel_arch.h (+3, -3) (Diff)
/intern/cycles/kernel/device/cpu/kernel_arch_impl.h (+8, -8) (Diff)
/intern/cycles/kernel/device/cuda/kernel.cu (+20, -4) (Diff)
/intern/cycles/kernel/kernel_adaptive_sampling.h (+5, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021