Blender Git Commit Log
Git Commits -> Revision 164d35f
Revision 164d35f by Brecht Van Lommel (cycles-x) April 13, 2021, 10:28 (GMT) |
Cycles: make megakernel execution work again After addition of more kernels the logic didn't work well anymore, for example shade_light was holding up all paths going to the intersect_closest state. Rather than trying to get all paths to the intersect_closest state, make the megakernel support paths in different states. This seems to help viewport rendering by about 10% here. I also tweaked the threshold to what gave me best performance, but hard to say in general what this value should be. I noticed get_num_active_paths() used for adding more work tiles is not correct since it's double counting some paths. Not fixing it as part of this patch, only adding a comment about it. |
Commit Details:
Full Hash: 164d35f8616e130569afeeda38a3685393e8cdb4
Parent Commit: 5b2d4e8
Lines Changed: +71, -40
6 Modified Paths:
/intern/cycles/device/cuda/queue.cpp (+1, -0) (Diff)
/intern/cycles/device/device_kernel.cpp (+2, -0) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.cpp (+53, -39) (Diff)
/intern/cycles/kernel/device/cuda/kernel.cu (+13, -0) (Diff)
/intern/cycles/kernel/integrator/integrator_megakernel.h (+1, -1) (Diff)
/intern/cycles/kernel/kernel_types.h (+1, -0) (Diff)
/intern/cycles/device/device_kernel.cpp (+2, -0) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.cpp (+53, -39) (Diff)
/intern/cycles/kernel/device/cuda/kernel.cu (+13, -0) (Diff)
/intern/cycles/kernel/integrator/integrator_megakernel.h (+1, -1) (Diff)
/intern/cycles/kernel/kernel_types.h (+1, -0) (Diff)