diff options
author | Brecht Van Lommel <brecht@blender.org> | 2021-07-26 20:45:05 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2021-07-26 20:46:51 +0300 |
commit | cf74cd93674c11e8e5ef599100d0c7bf3cc8a79c (patch) | |
tree | 9a8daa74e0690d7527a0bcd7124e6f42ce489ed0 /intern/cycles | |
parent | 6eb94d8df2e671b2e473b1178248467ad363e1e9 (diff) |
Cycles: upgrade CUDA to 11.4
This fixes a performance regression on Ampere cards, on specific scenes like
classroom. For cycles-x there is little difference, but this is still helpful
for LTS releases, and we need to upgrade at some point anyway.
Diffstat (limited to 'intern/cycles')
-rw-r--r-- | intern/cycles/device/cuda/device_cuda_impl.cpp | 9 | ||||
-rw-r--r-- | intern/cycles/kernel/CMakeLists.txt | 9 |
2 files changed, 12 insertions, 6 deletions
diff --git a/intern/cycles/device/cuda/device_cuda_impl.cpp b/intern/cycles/device/cuda/device_cuda_impl.cpp index 5b62292ca55..cebe8ce631e 100644 --- a/intern/cycles/device/cuda/device_cuda_impl.cpp +++ b/intern/cycles/device/cuda/device_cuda_impl.cpp @@ -461,18 +461,19 @@ string CUDADevice::compile_kernel(const DeviceRequestedFeatures &requested_featu const int nvcc_cuda_version = cuewCompilerVersion(); VLOG(1) << "Found nvcc " << nvcc << ", CUDA version " << nvcc_cuda_version << "."; - if (nvcc_cuda_version < 80) { + if (nvcc_cuda_version < 101) { printf( "Unsupported CUDA version %d.%d detected, " - "you need CUDA 8.0 or newer.\n", + "you need CUDA 10.1 or newer.\n", nvcc_cuda_version / 10, nvcc_cuda_version % 10); return string(); } - else if (!(nvcc_cuda_version == 101 || nvcc_cuda_version == 102)) { + else if (!(nvcc_cuda_version == 101 || nvcc_cuda_version == 102 || nvcc_cuda_version == 111 || + nvcc_cuda_version == 112 || nvcc_cuda_version == 113 || nvcc_cuda_version == 114)) { printf( "CUDA version %d.%d detected, build may succeed but only " - "CUDA 10.1 and 10.2 are officially supported.\n", + "CUDA 10.1 to 11.4 are officially supported.\n", nvcc_cuda_version / 10, nvcc_cuda_version % 10); } diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt index ea0f16c9233..db789d885f7 100644 --- a/intern/cycles/kernel/CMakeLists.txt +++ b/intern/cycles/kernel/CMakeLists.txt @@ -380,11 +380,16 @@ if(WITH_CYCLES_CUDA_BINARIES) set(CUDA_VERSION "${CUDA_VERSION_MAJOR}${CUDA_VERSION_MINOR}") # warn for other versions - if((CUDA_VERSION MATCHES "101") OR (CUDA_VERSION MATCHES "102") OR (CUDA_VERSION MATCHES "111")) + if((CUDA_VERSION MATCHES "101") OR + (CUDA_VERSION MATCHES "102") OR + (CUDA_VERSION MATCHES "111") OR + (CUDA_VERSION MATCHES "112") OR + (CUDA_VERSION MATCHES "113") OR + (CUDA_VERSION MATCHES "114")) else() message(WARNING "CUDA version ${CUDA_VERSION_MAJOR}.${CUDA_VERSION_MINOR} detected, " - "build may succeed but only CUDA 10.1, 10.2 and 11.1 are officially supported") + "build may succeed but only CUDA 10.1 to 11.4 are officially supported") endif() # build for each arch |