[Bf-blender-cvs] [45ed762124c] blender-v2.93-release: Cycles: upgrade CUDA to 11.4

Brecht Van Lommel noreply at git.blender.org
Tue Jul 27 14:12:19 CEST 2021


Commit: 45ed762124c5b3aded19dad2e93727450bc9c531
Author: Brecht Van Lommel
Date:   Mon Jul 26 19:45:05 2021 +0200
Branches: blender-v2.93-release
https://developer.blender.org/rB45ed762124c5b3aded19dad2e93727450bc9c531

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.

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

M	build_files/config/pipeline_config.json
M	intern/cycles/device/cuda/device_cuda_impl.cpp
M	intern/cycles/kernel/CMakeLists.txt

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

diff --git a/build_files/config/pipeline_config.json b/build_files/config/pipeline_config.json
index 1301ff1862d..37048a23454 100644
--- a/build_files/config/pipeline_config.json
+++ b/build_files/config/pipeline_config.json
@@ -66,7 +66,7 @@
                 "version": "10.1"
             },
             "cuda11": {
-                "version": "11.3"
+                "version": "11.4"
             }
         },
         "cmake": {
@@ -88,4 +88,4 @@
             }
         }
     }
-}
\ No newline at end of file
+}
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 f6b4b963a7a..428b952a85b 100644
--- a/intern/cycles/kernel/CMakeLists.txt
+++ b/intern/cycles/kernel/CMakeLists.txt
@@ -379,11 +379,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



More information about the Bf-blender-cvs mailing list