Buildbot: Use annoying hybrid setup of two CUDA toolkits

This is for until we'll solve issues with toolkit 8.0.
This commit is contained in:
Sergey Sharybin
2016-08-02 15:32:03 +02:00
parent 500e0e9a3d
commit 08ebd72851
2 changed files with 19 additions and 3 deletions

View File

@@ -73,6 +73,7 @@ if 'cmake' in builder:
if builder.endswith('x86_64_10_6_cmake'): if builder.endswith('x86_64_10_6_cmake'):
cmake_extra_options.append('-DCMAKE_OSX_ARCHITECTURES:STRING=x86_64') cmake_extra_options.append('-DCMAKE_OSX_ARCHITECTURES:STRING=x86_64')
cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-hack/bin/nvcc') cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-hack/bin/nvcc')
cmake_extra_options.append('-DCUDA_NVCC8_EXECUTABLE=/usr/local/cuda8-hack/bin/nvcc')
elif builder.startswith('win'): elif builder.startswith('win'):
if builder.endswith('_vc2015'): if builder.endswith('_vc2015'):
@@ -89,6 +90,8 @@ if 'cmake' in builder:
elif builder.startswith('win32'): elif builder.startswith('win32'):
bits = 32 bits = 32
cmake_options.extend(['-G', 'Visual Studio 12 2013']) cmake_options.extend(['-G', 'Visual Studio 12 2013'])
cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE:FILEPATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5/bin/nvcc.exe')
cmake_extra_options.append('-DCUDA_NVCC8_EXECUTABLE:FILEPATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0/bin/nvcc.exe')
elif builder.startswith('linux'): elif builder.startswith('linux'):
tokens = builder.split("_") tokens = builder.split("_")
@@ -108,6 +111,9 @@ if 'cmake' in builder:
cuda_chroot_name = 'buildbot_' + deb_name + '_x86_64' cuda_chroot_name = 'buildbot_' + deb_name + '_x86_64'
targets = ['player', 'blender', 'cuda'] targets = ['player', 'blender', 'cuda']
cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-7.5/bin/nvcc')
cmake_extra_options.append('-DCUDA_NVCC8_EXECUTABLE=/usr/local/cuda-8.0/bin/nvcc')
cmake_options.append("-C" + os.path.join(blender_dir, cmake_config_file)) cmake_options.append("-C" + os.path.join(blender_dir, cmake_config_file))
# Prepare CMake options needed to configure cuda binaries compilation. # Prepare CMake options needed to configure cuda binaries compilation.

View File

@@ -244,12 +244,20 @@ if(WITH_CYCLES_CUDA_BINARIES)
set(cuda_debug_flags "") set(cuda_debug_flags "")
endif() endif()
set(cuda_version_flags "-D__KERNEL_CUDA_VERSION__=${CUDA_VERSION}") set(cuda_nvcc_command ${CUDA_NVCC_EXECUTABLE})
set(cuda_nvcc_version ${CUDA_VERSION})
if(DEFINED CUDA_NVCC8_EXECUTABLE AND ((${arch} STREQUAL "sm_60") OR (${arch} STREQUAL "sm_61")))
set(cuda_nvcc_command ${CUDA_NVCC8_EXECUTABLE})
set(cuda_nvcc_version "80")
endif()
set(cuda_version_flags "-D__KERNEL_CUDA_VERSION__=${cuda_nvcc_version}")
set(cuda_math_flags "--use_fast_math") set(cuda_math_flags "--use_fast_math")
add_custom_command( add_custom_command(
OUTPUT ${cuda_cubin} OUTPUT ${cuda_cubin}
COMMAND ${CUDA_NVCC_EXECUTABLE} COMMAND ${cuda_nvcc_command}
-arch=${arch} -arch=${arch}
${CUDA_NVCC_FLAGS} ${CUDA_NVCC_FLAGS}
-m${CUDA_BITS} -m${CUDA_BITS}
@@ -266,7 +274,6 @@ if(WITH_CYCLES_CUDA_BINARIES)
-DCCL_NAMESPACE_BEGIN= -DCCL_NAMESPACE_BEGIN=
-DCCL_NAMESPACE_END= -DCCL_NAMESPACE_END=
-DNVCC -DNVCC
DEPENDS ${cuda_sources}) DEPENDS ${cuda_sources})
delayed_install("${CMAKE_CURRENT_BINARY_DIR}" "${cuda_cubin}" ${CYCLES_INSTALL_PATH}/lib) delayed_install("${CMAKE_CURRENT_BINARY_DIR}" "${cuda_cubin}" ${CYCLES_INSTALL_PATH}/lib)
@@ -274,6 +281,9 @@ if(WITH_CYCLES_CUDA_BINARIES)
unset(cuda_extra_flags) unset(cuda_extra_flags)
unset(cuda_debug_flags) unset(cuda_debug_flags)
unset(cuda_nvcc_command)
unset(cuda_nvcc_version)
endmacro() endmacro()
foreach(arch ${CYCLES_CUDA_BINARIES_ARCH}) foreach(arch ${CYCLES_CUDA_BINARIES_ARCH})