blender/intern/cycles/kernel
Brecht Van Lommel a3abb020e3 Fix Cycles CUDA performance on CUDA 8.0.
Mostly this is making inlining match CUDA 7.5 in a few performance critical
places. The end result is that performance is now better than before, possibly
due to less register spilling or other CUDA 8.0 compiler improvements.

On benchmarks scenes, there are 3% to 35% render time reductions. Stack memory
usage is reduced a little too.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D2269
2016-10-03 22:15:25 +02:00
..
bvh Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
closure Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
geom Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernels Cycles: Change code order for Image Data Types. 2016-08-11 22:30:03 +02:00
osl Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
shaders Fix T49327: Cycles OSL Mode: RGB Curves node only outputs gray scale images 2016-09-12 16:14:40 +02:00
split Cycles: Cleanup code style in split kernel 2016-09-19 16:05:12 +02:00
svm Cycles: implement partial constant folding for exponentiation. 2016-10-01 14:37:03 +03:00
CMakeLists.txt Cycles: Move BVH constants to an own files, so they are easily re-usable 2016-09-19 13:00:41 +02:00
kernel_accumulate.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_bake.h Cycles: Replace object index hack with actual checks for SD_TRANSFORM_APPLIED 2016-09-11 13:49:05 -04:00
kernel_camera.h Cycles: Replace object index hack with actual checks for SD_TRANSFORM_APPLIED 2016-09-11 13:49:05 -04:00
kernel_compat_cpu.h Fix a few OpenCL compiler warnings. 2016-09-03 23:06:12 +02:00
kernel_compat_cuda.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_compat_opencl.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_debug.h Cycles: Add debug pass which shows number of instance pushes during camera ray intersection 2015-06-12 00:12:03 +02:00
kernel_differential.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
kernel_emission.h Cycles: Also support the constant emission speedup for mesh lights 2016-09-14 18:53:35 +02:00
kernel_film.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
kernel_globals.h Cycles: Support half and half4 textures. 2016-06-19 17:31:16 +02:00
kernel_jitter.h Fix T48301: Cycles incorrect render with CMJ and viewport samples 0. 2016-04-28 23:57:20 +02:00
kernel_light.h Cycles: Stop lamp sampling if the lamp isn't visible 2016-09-14 19:45:12 +02:00
kernel_math.h Cleanup: Move texture definitions to util, to avoid bad level include. 2016-04-15 23:02:44 +02:00
kernel_montecarlo.h Cycles code refactor: minor refactoring and comments for volume code. 2014-03-29 13:03:49 +01:00
kernel_passes.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
kernel_path_branched.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_path_common.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
kernel_path_state.h Fix T49078: Cycles tries to render volume from another render layer when camera is in volume 2016-08-25 10:55:59 +02:00
kernel_path_surface.h Cycles: Use correct light sampling PDF for MIS calculation with Branched Path Tracing 2016-09-25 23:16:05 +02:00
kernel_path_volume.h Cycles: Use correct light sampling PDF for MIS calculation with Branched Path Tracing 2016-09-25 23:16:05 +02:00
kernel_path.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_projection.h Cycles: Tweaks to support CUDA 8 toolkit 2016-08-01 15:54:29 +02:00
kernel_queues.h Cycles: Code cleanup in split kernel, whitespaces 2015-07-03 11:03:56 +02:00
kernel_random.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_shader.h Cycles: Fix compilation error with minimal feature set 2016-09-28 17:03:59 +02:00
kernel_shadow.h Fix Cycles CUDA performance on CUDA 8.0. 2016-10-03 22:15:25 +02:00
kernel_subsurface.h Cycles: Fix wrong SSS in combination with hair on AVX2 platform 2016-09-12 12:48:35 +02:00
kernel_textures.h Fix Cycles OpenCL textures after recent CUDA fix. 2016-08-15 16:28:48 +02:00
kernel_types.h Cycles: Cleanup, whitespace 2016-09-21 14:42:05 +02:00
kernel_volume.h Cycles: Also support the constant emission speedup for mesh lights 2016-09-14 18:53:35 +02:00
kernel_work_stealing.h Cycles: Cleanup, indent nested preprocessor directives 2016-03-25 13:55:42 +01:00
kernel.h Cycles: Deduplicte CPU kernel declaration and definition code 2015-12-30 17:54:02 +05:00