diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-10-29 18:56:27 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-01-30 02:23:06 +0300 |
commit | 9815f8a623d47c9a52aac8ac3a2bcc17d1c74b5e (patch) | |
tree | c42a1bbdd4f070802932bce88c11be8c8732b930 /intern/cycles/kernel/kernel_shadow.h | |
parent | fef53c74b5520fe6404d581a3c15fad4177f29b7 (diff) |
Cycles: Cleanup of OpenCL split kernel routines
The idea is to switch from allocating separate buffers for shader data's
structure of arrays to allocating one huge memory block and do some index
trickery to make it accessed as SOA.
This saves quite reasonable amount of lines of code in device_opencl and
also makes it possible to get rid of special declaration of ShaderData
structure.
As a side effect it also makes it easier to experiment with SOA vs. AOS
for split kernel.
Works fine here on NVidia GTX580, Intel CPU amd AMD Fiji cards.
Reviewers: #cycles, brecht, juicyfruit, dingto
Differential Revision: https://developer.blender.org/D1593
Diffstat (limited to 'intern/cycles/kernel/kernel_shadow.h')
-rw-r--r-- | intern/cycles/kernel/kernel_shadow.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/intern/cycles/kernel/kernel_shadow.h b/intern/cycles/kernel/kernel_shadow.h index aefa5d5be85..3b1111e5069 100644 --- a/intern/cycles/kernel/kernel_shadow.h +++ b/intern/cycles/kernel/kernel_shadow.h @@ -201,7 +201,7 @@ ccl_device_noinline bool shadow_blocked(KernelGlobals *kg, #endif #ifdef __SPLIT_KERNEL__ - Intersection *isect = &kg->isect_shadow[TIDX]; + Intersection *isect = &kg->isect_shadow[SD_THREAD]; #else Intersection isect_object; Intersection *isect = &isect_object; |