[Bf-blender-cvs] [b83d851] master: Cycles: Another attempt to solve 32bit CUDA kernel

Sergey Sharybin noreply at git.blender.org
Mon Feb 9 12:15:10 CET 2015


Commit: b83d8519012940e9b344cdca7154d575e5a433c4
Author: Sergey Sharybin
Date:   Mon Feb 9 16:11:58 2015 +0500
Branches: master
https://developer.blender.org/rBb83d8519012940e9b344cdca7154d575e5a433c4

Cycles: Another attempt to solve 32bit CUDA kernel

Previous fix didn't quite work well. For some reason everything worked fine when
using native nvcc in 32bit environment, but cross-compiling from 64bit platform
it was still running out of memory.

For now just made it so all the kernels are slower on 32bit CUDA as a temporary
solution. Either it'll be solved in next CUDA releases (by dropped 32bit? =\) or
we'll find better workaround.

===================================================================

M	intern/cycles/kernel/geom/geom_triangle_intersect.h

===================================================================

diff --git a/intern/cycles/kernel/geom/geom_triangle_intersect.h b/intern/cycles/kernel/geom/geom_triangle_intersect.h
index 6f8c3e3..30468ef 100644
--- a/intern/cycles/kernel/geom/geom_triangle_intersect.h
+++ b/intern/cycles/kernel/geom/geom_triangle_intersect.h
@@ -51,7 +51,7 @@ typedef struct IsectPrecalc {
 
 /* Workaround for CUDA toolkit 6.5.16. */
 #if defined(__KERNEL_CPU__) || !defined(__KERNEL_CUDA_EXPERIMENTAL__) || __CUDA_ARCH__ < 500
-#  if (defined(i386) || defined(_M_IX86)) && (__CUDA_ARCH__ > 500)
+#  if (defined(i386) || defined(_M_IX86))
 ccl_device_noinline
 #  else
 ccl_device_inline




More information about the Bf-blender-cvs mailing list