diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2016-10-02 15:48:39 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2016-10-03 23:15:25 +0300 |
commit | a3abb020e37a072eb71fd30de9ab125d1c16623a (patch) | |
tree | b525be7f8a0792eedecb2b95802ede88dc3f330e /intern/cycles/kernel/closure/bsdf.h | |
parent | 49ad4215baf16d850d0e367f003ab688e4a3d08e (diff) |
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
Diffstat (limited to 'intern/cycles/kernel/closure/bsdf.h')
-rw-r--r-- | intern/cycles/kernel/closure/bsdf.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/intern/cycles/kernel/closure/bsdf.h b/intern/cycles/kernel/closure/bsdf.h index 2ab92badc93..7e4d5fe2e37 100644 --- a/intern/cycles/kernel/closure/bsdf.h +++ b/intern/cycles/kernel/closure/bsdf.h @@ -36,7 +36,7 @@ CCL_NAMESPACE_BEGIN -ccl_device_inline int bsdf_sample(KernelGlobals *kg, +ccl_device_forceinline int bsdf_sample(KernelGlobals *kg, ShaderData *sd, const ShaderClosure *sc, float randu, @@ -147,7 +147,7 @@ ccl_device_inline int bsdf_sample(KernelGlobals *kg, #ifndef __KERNEL_CUDA__ ccl_device #else -ccl_device_inline +ccl_device_forceinline #endif float3 bsdf_eval(KernelGlobals *kg, ShaderData *sd, |