Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Werner <stefan.werner@tangent-animation.com>2019-10-16 11:29:04 +0300
committerStefan Werner <stefan.werner@tangent-animation.com>2019-10-16 11:29:04 +0300
commit35a545b752319833f8a231ea4ebbb46fc2650515 (patch)
tree398f85040d71b69a8e59153f3bf3e7120e8a2fdb /intern/cycles/device
parent76e8d2cc174315e3f71b561872e4fb88cfd75743 (diff)
Cycles: Allow PTX targets for CUDA kernel build.
This is intended for developers on Windows primarily: Now, CUDA architectures of type compute_xx are supported. This allows for quicker builds, at the expense of the CUDA driver running ptxas the first time a kernel is loaded. Differential Revision: https://developer.blender.org/D5953
Diffstat (limited to 'intern/cycles/device')
-rw-r--r--intern/cycles/device/device_cuda.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/intern/cycles/device/device_cuda.cpp b/intern/cycles/device/device_cuda.cpp
index 00dd37f089c..b5e10b0c2cb 100644
--- a/intern/cycles/device/device_cuda.cpp
+++ b/intern/cycles/device/device_cuda.cpp
@@ -454,6 +454,12 @@ class CUDADevice : public Device {
VLOG(1) << "Using precompiled kernel.";
return cubin;
}
+ const string ptx = path_get(string_printf("lib/%s_compute_%d%d.ptx", name, major, minor));
+ VLOG(1) << "Testing for pre-compiled kernel " << ptx << ".";
+ if (path_exists(ptx)) {
+ VLOG(1) << "Using precompiled kernel.";
+ return ptx;
+ }
}
const string common_cflags = compile_kernel_get_common_cflags(