[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53695] trunk/blender: Switch linux buildbot to compile all cuda kernels in 64bit environment
Sergey Sharybin
sergey.vfx at gmail.com
Thu Jan 10 09:01:20 CET 2013
Revision: 53695
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53695
Author: nazgul
Date: 2013-01-10 08:01:19 +0000 (Thu, 10 Jan 2013)
Log Message:
-----------
Switch linux buildbot to compile all cuda kernels in 64bit environment
Solves memory limit issues when building sm_13 for 32bit platform.
Some further refinement of patch could be needed.
Modified Paths:
--------------
trunk/blender/SConstruct
trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
trunk/blender/build_files/buildbot/config/user-config-player-glibc211-i686.py
trunk/blender/build_files/buildbot/config/user-config-player-glibc211-x86_64.py
trunk/blender/build_files/buildbot/slave_compile.py
Added Paths:
-----------
trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-i686.py
trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
Modified: trunk/blender/SConstruct
===================================================================
--- trunk/blender/SConstruct 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/SConstruct 2013-01-10 08:01:19 UTC (rev 53695)
@@ -276,7 +276,9 @@
env[k] = v
if 'cudakernels' in B.targets:
+ env['WITH_BF_CYCLES'] = True
env['WITH_BF_CYCLES_CUDA_BINARIES'] = True
+ env['WITH_BF_PYTHON'] = False
# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY and JAckOSX detection for OSX
if env['OURPLATFORM']=='darwin':
Added: trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-i686.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-i686.py (rev 0)
+++ trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-i686.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -0,0 +1,6 @@
+BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
+BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
+BF_NUMJOBS = 1
+BF_BITNESS = 32
+
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
Added: trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py (rev 0)
+++ trunk/blender/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -0,0 +1,6 @@
+BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
+BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
+BF_NUMJOBS = 1
+BF_BITNESS = 64
+
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
Modified: trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -1,6 +1,6 @@
BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
-BF_NUMJOBS = 2
+BF_NUMJOBS = 4
# Python configuration
BF_PYTHON_VERSION = '3.3'
@@ -109,8 +109,7 @@
# Cycles
WITH_BF_CYCLES = True
-WITH_BF_CYCLES_CUDA_BINARIES = True
-BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
+WITH_BF_CYCLES_CUDA_BINARIES = False
WITH_BF_OIIO = True
WITH_BF_STATICOIIO = True
Modified: trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -1,6 +1,6 @@
BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
-BF_NUMJOBS = 2
+BF_NUMJOBS = 4
# Python configuration
BF_PYTHON_VERSION = '3.3'
@@ -109,8 +109,7 @@
# Cycles
WITH_BF_CYCLES = True
-WITH_BF_CYCLES_CUDA_BINARIES = True
-BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
+WITH_BF_CYCLES_CUDA_BINARIES = False
WITH_BF_OIIO = True
WITH_BF_STATICOIIO = True
Modified: trunk/blender/build_files/buildbot/config/user-config-player-glibc211-i686.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-player-glibc211-i686.py 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/build_files/buildbot/config/user-config-player-glibc211-i686.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -1,6 +1,6 @@
BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
-BF_NUMJOBS = 2
+BF_NUMJOBS = 4
# Python configuration
BF_PYTHON_VERSION = '3.3'
Modified: trunk/blender/build_files/buildbot/config/user-config-player-glibc211-x86_64.py
===================================================================
--- trunk/blender/build_files/buildbot/config/user-config-player-glibc211-x86_64.py 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/build_files/buildbot/config/user-config-player-glibc211-x86_64.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -1,6 +1,6 @@
BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
-BF_NUMJOBS = 2
+BF_NUMJOBS = 4
# Python configuration
BF_PYTHON_VERSION = '3.3'
Modified: trunk/blender/build_files/buildbot/slave_compile.py
===================================================================
--- trunk/blender/build_files/buildbot/slave_compile.py 2013-01-10 08:01:07 UTC (rev 53694)
+++ trunk/blender/build_files/buildbot/slave_compile.py 2013-01-10 08:01:19 UTC (rev 53695)
@@ -60,6 +60,26 @@
if builder.find('linux') != -1:
import shutil
+ configs = []
+ if builder.endswith('linux_glibc211_x86_64_scons'):
+ configs = ['user-config-player-glibc211-x86_64.py',
+ 'user-config-cuda-glibc211-x86_64.py',
+ 'user-config-glibc211-x86_64.py']
+ chroot_name = 'buildbot_squeeze_x86_64'
+ cuda_chroot = 'buildbot_squeeze_x86_64'
+ elif builder.endswith('linux_glibc211_i386_scons'):
+ configs = ['user-config-player-glibc211-i686.py',
+ 'user-config-cuda-glibc211-i686.py',
+ 'user-config-glibc211-i686.py']
+ chroot_name = 'buildbot_squeeze_i686'
+
+ # use 64bit cuda toolkit, so there'll be no memory limit issues
+ cuda_chroot = 'buildbot_squeeze_x86_64'
+
+ # Compilation will happen inside of chroot environment
+ prog_scons_cmd = ['schroot', '-c', chroot_name] + scons_cmd
+ cuda_scons_cmd = ['schroot', '-c', cuda_chroot] + scons_cmd
+
# We're using the same rules as release builder, so tweak
# build and install dirs
build_dir = os.path.join('..', 'build', builder)
@@ -74,14 +94,6 @@
buildbot_dir = os.path.dirname(os.path.realpath(__file__))
config_dir = os.path.join(buildbot_dir, 'config')
- configs = []
- if builder.endswith('linux_glibc211_x86_64_scons'):
- configs = ['user-config-player-glibc211-x86_64.py',
- 'user-config-glibc211-x86_64.py']
- elif builder.endswith('linux_glibc211_i386_scons'):
- configs = ['user-config-player-glibc211-i686.py',
- 'user-config-glibc211-i686.py']
-
for config in configs:
config_fpath = os.path.join(config_dir, config)
@@ -94,14 +106,19 @@
scons_options += common_options
- if config.find('player') == -1:
+ if config.find('player') != -1:
+ scons_options.append('blenderplayer')
+ cur_scons_cmd = prog_scons_cmd
+ elif config.find('cuda') != -1:
+ scons_options.append('cudakernels')
+ cur_scons_cmd = cuda_scons_cmd
+ else:
scons_options.append('blender')
- else:
- scons_options.append('blenderplayer')
+ cur_scons_cmd = prog_scons_cmd
scons_options.append('BF_CONFIG=' + config_fpath)
- retcode = subprocess.call(scons_cmd + scons_options)
+ retcode = subprocess.call(cur_scons_cmd + scons_options)
if retcode != 0:
print('Error building rules wuth config ' + config)
sys.exit(retcode)
More information about the Bf-blender-cvs
mailing list