blender/intern/cycles/kernel/svm
Sergey Sharybin ae7d84dbc1 Cycles: Use native saturate function for CUDA
This more a workaround for CUDA optimizer which can't optimize clamp(x, 0, 1)
into a single instruction and uses 4 instructions instead.

Original patch by @lockal with own modification:

  Don't make changes outside of the kernel. They don't make any difference
  anyway and term saturate() has a bit different meaning outside of kernel.

This gives around 2% of speedup in Barcelona file, but in more complex shader
setups with lots of math nodes with clamping speedup could be much nicer.

Subscribers: dingto

Projects: #cycles

Differential Revision: https://developer.blender.org/D1224
2015-04-28 00:38:32 +05:00
..
svm_attribute.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_blackbody.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_brick.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_brightness.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_camera.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_checker.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_closure.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_convert.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_displace.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_fresnel.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_gamma.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_geometry.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_gradient.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_hsv.h Cleanup: Typo fix in HSV code. 2015-04-04 07:50:09 +02:00
svm_image.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_invert.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_light_path.h Cycles: Avoid float/int conversion in few places 2015-03-31 19:52:14 +05: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 Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_math.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_mix.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_musgrave.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
svm_noise.h Cleanup: Remove some unused / unreferenced functions for perdiodic perlin noise. 2014-10-03 18:00:45 +02:00
svm_noisetex.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_normal.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_ramp.h Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05: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 Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_tex_coord.h Cycles: Fix for bump node not working with object texture mapping 2015-01-29 21:48:22 +05:00
svm_texture.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_types.h Fix T43755: Wireframe attribute doesn't work with displace 2015-02-21 17:30:29 +05:00
svm_value.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_vector_transform.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_voronoi.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_wave.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm_wavelength.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm_wireframe.h Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
svm.h Cycles: Avoid float/int conversion in few places 2015-03-31 19:52:14 +05:00