Blender Git Loki
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)
/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)