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)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021