forked from bartvdbraak/blender
230c00d872
This does a few things at once: - Refactors host side split kernel logic into a new device agnostic class `DeviceSplitKernel`. - Removes tile splitting, a new work pool implementation takes its place and allows as many threads as will fit in memory regardless of tile size, which can give performance gains. - Refactors split state buffers into one buffer, as well as reduces the number of arguments passed to kernels. Means there's less code to deal with overall. - Moves kernel logic out of OpenCL kernel files so they can later be used by other device types. - Replaced OpenCL specific APIs with new generic versions - Tiles can now be seen updating during rendering |
||
---|---|---|
.. | ||
kernel_background_buffer_update.h | ||
kernel_data_init.h | ||
kernel_direct_lighting.h | ||
kernel_holdout_emission_blurring_pathtermination_ao.h | ||
kernel_lamp_emission.h | ||
kernel_next_iteration_setup.h | ||
kernel_queue_enqueue.h | ||
kernel_scene_intersect.h | ||
kernel_shader_eval.h | ||
kernel_shadow_blocked.h | ||
kernel_split_common.h | ||
kernel_split_data.h | ||
kernel_sum_all_radiance.h |