blender/intern/cycles/render
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
..
attribute.cpp Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
attribute.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
background.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
background.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
bake.cpp Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
bake.h Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
blackbody.cpp Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
blackbody.h Cycles: Don't re-generate blackbody/beckmann tables on every shaders update 2015-01-23 14:00:48 +05:00
buffers.cpp Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
buffers.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
camera.cpp Cleanup: Code style. 2015-04-26 00:42:26 +02:00
camera.h Cycles: Cleanup, make more clear what camera utility functions are private/public 2015-04-10 16:25:35 +05:00
CMakeLists.txt Cycles: Synchronize changes with standalone repository 2015-01-01 01:31:07 +05:00
curves.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
curves.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
film.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
film.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
graph.cpp Cleanup: Code style. 2015-04-26 00:42:26 +02:00
graph.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
image.cpp Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
image.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
integrator.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
integrator.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
light.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
light.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
mesh_displace.cpp Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
mesh.cpp Cycles: Split BVH nodes storage into inner and leaf nodes 2015-04-20 17:29:51 +05:00
mesh.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
nodes.cpp Cycles: Use native saturate function for CUDA 2015-04-28 00:38:32 +05:00
nodes.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
object.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
object.h Fix T43311: using displacement shader crashes blender 2015-01-19 19:23:21 +05:00
osl.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
osl.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
particles.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
particles.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
scene.cpp Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
scene.h Cycles: Split BVH nodes storage into inner and leaf nodes 2015-04-20 17:29:51 +05:00
session.cpp Cycles: More instant feedback on progressive rendering for first sample 2015-04-06 19:28:25 +05:00
session.h Optionally use c++11 stuff instead of boost in cycles where possible. We do and continue to depend on boost though 2015-03-29 22:12:40 +02:00
shader.cpp Cleanup: Update Lookup table comments. 2015-04-26 00:06:38 +02:00
shader.h Cycles: Experiment with making previews more interactive 2015-04-06 19:22:17 +05:00
sky_model_data.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.cpp Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sobol.cpp Fix #29528: crash adding subsurf modifier in a particular scene with viewport render. 2011-12-08 21:55:35 +00:00
sobol.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
svm.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
tables.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
tables.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
tile.cpp Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
tile.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00