blender/intern/cycles/kernel/svm
Mai Lavelle 4e9b17da4c Cycles: Speedup by avoiding extra calculations in noise texture when unneeded
Noise texture is now faster when the color socket is unused. Potential for
speedup spotted by @nutel.

Some performance results:

                     Render Time Before    After    Difference
Gooseberry benchmark         47:51.34    45:55.57       -4%
Koro                         12:24.92    12:18.46     -0.8%
Simple cube (Color socket)      48.53       48.72     +0.3%
Simple cube (Fac socket)        48.74       32.78    -32.7%
Goethe displacement           1:21.18     1:08.47    -15.6%
Cycles brick displacement     3:02.38     2:16.76    -25.0%
Large displacement scene     23:54.12    20:09.62    -15.6%

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D2513
2017-02-21 07:24:33 -05:00
..
svm_attribute.h Cycles Standalone: Fix support for subdivision meshes 2016-08-24 10:39:00 -04:00
svm_blackbody.h Cycles: Use curve approximation for blackbody instead of lookup table 2015-05-05 06:11:54 +00:00
svm_brick.h Cycles: Fix OpenCL compilation with the new brick texture 2016-10-30 16:25:35 +01:00
svm_brightness.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_bump.h Cycles microdisplacement: Improved automatic bump mapping 2016-09-01 22:45:49 -04:00
svm_camera.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_checker.h Fix T48139: Checker texture strange behavior in cycles 2016-04-15 15:30:30 +02:00
svm_closure.h Cycles: refactor kernel closure storage to use structs per closure type. 2016-07-31 02:34:43 +02:00
svm_color_util.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_convert.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_displace.h Cycles: Replace object index hack with actual checks for SD_TRANSFORM_APPLIED 2016-09-11 13:49:05 -04:00
svm_fresnel.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_gamma.h Cycles: Constant fold for the Gamma Node. 2015-12-22 13:53:13 +01:00
svm_geometry.h Cycles: Tweaks to support CUDA 8 toolkit 2016-08-01 15:54:29 +02:00
svm_gradient.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_hsv.h Code cleanup: simplify SVM stack assignment. 2016-05-05 21:43:46 +02:00
svm_image.h Cycles: Fix CUDA compilation error after recent changes 2017-02-15 15:01:08 +01:00
svm_invert.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_light_path.h Cycles: Expose diffuse and glossy depth to Light Path node 2017-01-19 15:09:58 +01:00
svm_magic.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_mapping.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_math_util.h Fix T49253: Cycles blackbody is wrong on AVX2 CPU on Windows 2017-02-07 13:05:19 +01:00
svm_math.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_mix.h Cycles: add constant folding for more color operation nodes. 2016-06-19 20:17:28 +02:00
svm_musgrave.h Cleanup: Remove unused Noise Basis texture code. 2015-05-28 01:07:37 +02:00
svm_noise.h Cycles: Cleanup, indent nested preprocessor directives 2016-03-25 13:55:42 +01:00
svm_noisetex.h Cycles: Speedup by avoiding extra calculations in noise texture when unneeded 2017-02-21 07:24:33 -05:00
svm_normal.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_ramp_util.h Cycles: Cleanup, style 2016-10-24 12:26:12 +02:00
svm_ramp.h Cycles: Tweaks to support CUDA 8 toolkit 2016-08-01 15:54:29 +02:00
svm_sepcomb_hsv.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_sepcomb_vector.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_sky.h Revert "Cycles: Remove the Preetham Sky model." 2016-04-05 12:25:54 +02:00
svm_tex_coord.h Cycles: Fix T49901: OpenCL build error after recent light texture coordinate commit 2016-11-03 03:08:14 +01:00
svm_texture.h Cleanup: Remove unused Noise Basis texture code. 2015-05-28 01:07:37 +02:00
svm_types.h Cycles: Expose diffuse and glossy depth to Light Path node 2017-01-19 15:09:58 +01:00
svm_value.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_vector_transform.h Cycles: OpenCL kernel split 2015-05-09 19:52:40 +05:00
svm_voronoi.h Cleanup: Remove unused Voronoi texture code. 2015-05-28 00:36:33 +02:00
svm_voxel.h Cycles: OpenCL 3d textures support. 2016-10-22 23:49:29 +02:00
svm_wave.h Cycles: Add Saw option to the wave texture 2016-01-01 23:25:37 +01:00
svm_wavelength.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_wireframe.h Cycles: Split ShaderData object and shader flags 2017-01-23 12:56:55 +01:00
svm.h Cycles: Replace object index hack with actual checks for SD_TRANSFORM_APPLIED 2016-09-11 13:49:05 -04:00