blender/intern/cycles/kernel/kernels/opencl
Mai Lavelle 230c00d872 Cycles: OpenCL split kernel refactor
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
2017-03-08 00:52:41 -05:00
..
kernel_background_buffer_update.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_data_init.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_direct_lighting.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_holdout_emission_blurring_pathtermination_ao.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_lamp_emission.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_next_iteration_setup.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_queue_enqueue.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_scene_intersect.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_shader_eval.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_shadow_blocked.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel_sum_all_radiance.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00
kernel.cl Cycles: OpenCL split kernel refactor 2017-03-08 00:52:41 -05:00