Blender Git Commit Log
Git Commits -> Revision 504b201
Revision 504b201 by Mai Lavelle (cycles_split_kernel) October 14, 2016, 13:48 (GMT) |
Cycles: Simplify shared buffer and argument passing in split kernel Adds a single buffer for storing and passing around data shared between kernels. The idea is to have there be less code so things are easier to work with and later deduplicate. Benefits: - reduces the number of buffers that need to be allocated and kept track of by using a single buffer for data shared between kernels - simplify passing of arguments to kernels by using a pointer in kernel globals to point to shared data - simplify calculation of shared data size Things may need renaming / reorganizing but this is just to get things started. |
Commit Details:
Full Hash: 504b201ba7a661f2e551c2fcd6b93f64ebf25b57
Parent Commit: 44d8ddc
Lines Changed: +345, -668
1 Added Path:
/intern/cycles/kernel/split/kernel_split_data.h (+127, -0) (View)
26 Modified Paths:
/intern/cycles/device/CMakeLists.txt (+1, -0) (Diff)
/intern/cycles/device/opencl/opencl_split.cpp (+35, -246) (Diff)
/intern/cycles/kernel/CMakeLists.txt (+1, -0) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_background_buffer_update.cl (+4, -29) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_data_init.cl (+8, -32) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_direct_lighting.cl (+4, -20) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_holdout_emission_blurring_pathtermination_ao.cl (+5, -32) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_lamp_emission.cl (+3, -16) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_next_iteration_setup.cl (+4, -31) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_queue_enqueue.cl (+6, -5) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_scene_intersect.cl (+3, -20) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_shader_eval.cl (+5, -19) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_shadow_blocked.cl (+4, -13) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_sum_all_radiance.cl (+3, -4) (Diff)
/intern/cycles/kernel/kernel_globals.h (+1, -0) (Diff)
/intern/cycles/kernel/split/kernel_background_buffer_update.h (+15, -27) (Diff)
/intern/cycles/kernel/split/kernel_data_init.h (+32, -37) (Diff)
/intern/cycles/kernel/split/kernel_direct_lighting.h (+9, -17) (Diff)
/intern/cycles/kernel/split/kernel_holdout_emission_blurring_pathtermination_ao.h (+16, -25) (Diff)
/intern/cycles/kernel/split/kernel_lamp_emission.h (+7, -13) (Diff)
/intern/cycles/kernel/split/kernel_next_iteration_setup.h (+18, -30) (Diff)
/intern/cycles/kernel/split/kernel_scene_intersect.h (+9, -17) (Diff)
/intern/cycles/kernel/split/kernel_shader_eval.h (+8, -16) (Diff)
/intern/cycles/kernel/split/kernel_shadow_blocked.h (+5, -9) (Diff)
/intern/cycles/kernel/split/kernel_split_common.h (+3, -0) (Diff)
/intern/cycles/kernel/split/kernel_sum_all_radiance.h (+9, -10) (Diff)
/intern/cycles/device/opencl/opencl_split.cpp (+35, -246) (Diff)
/intern/cycles/kernel/CMakeLists.txt (+1, -0) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_background_buffer_update.cl (+4, -29) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_data_init.cl (+8, -32) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_direct_lighting.cl (+4, -20) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_holdout_emission_blurring_pathtermination_ao.cl (+5, -32) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_lamp_emission.cl (+3, -16) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_next_iteration_setup.cl (+4, -31) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_queue_enqueue.cl (+6, -5) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_scene_intersect.cl (+3, -20) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_shader_eval.cl (+5, -19) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_shadow_blocked.cl (+4, -13) (Diff)
/intern/cycles/kernel/kernels/opencl/kernel_sum_all_radiance.cl (+3, -4) (Diff)
/intern/cycles/kernel/kernel_globals.h (+1, -0) (Diff)
/intern/cycles/kernel/split/kernel_background_buffer_update.h (+15, -27) (Diff)
/intern/cycles/kernel/split/kernel_data_init.h (+32, -37) (Diff)
/intern/cycles/kernel/split/kernel_direct_lighting.h (+9, -17) (Diff)
/intern/cycles/kernel/split/kernel_holdout_emission_blurring_pathtermination_ao.h (+16, -25) (Diff)
/intern/cycles/kernel/split/kernel_lamp_emission.h (+7, -13) (Diff)
/intern/cycles/kernel/split/kernel_next_iteration_setup.h (+18, -30) (Diff)
/intern/cycles/kernel/split/kernel_scene_intersect.h (+9, -17) (Diff)
/intern/cycles/kernel/split/kernel_shader_eval.h (+8, -16) (Diff)
/intern/cycles/kernel/split/kernel_shadow_blocked.h (+5, -9) (Diff)
/intern/cycles/kernel/split/kernel_split_common.h (+3, -0) (Diff)
/intern/cycles/kernel/split/kernel_sum_all_radiance.h (+9, -10) (Diff)