Blender Git Commit Log

Git Commits -> Revision 004ca6e

Revision 004ca6e by Sergey Sharybin (cycles-x)
April 2, 2021, 12:12 (GMT)
Cycles: Speedup adaptive sampling on CPU

- Do early output in the convergence test, to avoid error calculation
for pixel which is known to be converged.

- Better threading scheduling in the path trace work, to avoid extra
call of `parallel_for` which has (unmeasurable) overhead.

- Biggest change is to stop parallel samples for pixel once it did
converge. Prior to this change the path trace work will attempt to
initialize path state for many samples in a row for this pixel.

Timing on sampling simple file (diffuse monkey on diffuse plane):

- master is 3.89 sec
- before this change: 4.24 sec
- after this change: 4.04 sec

Commit Details:

Full Hash: 004ca6e7911b5dd035458ce2132895f3373fee9d
Parent Commit: 2e81199
Lines Changed: +32, -21

6 Modified Paths:

/intern/cycles/device/cpu/kernel.h (+1, -1) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.cpp (+9, -12) (Diff)
/intern/cycles/kernel/device/cpu/kernel_arch.h (+1, -1) (Diff)
/intern/cycles/kernel/device/cpu/kernel_arch_impl.h (+4, -3) (Diff)
/intern/cycles/kernel/integrator/integrator_init_from_camera.h (+8, -3) (Diff)
/intern/cycles/kernel/kernel_adaptive_sampling.h (+9, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021