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
path: root/intern
diff options
context:
space:
mode:
authorThomas Dinges <blender@dingto.org>2016-01-14 14:51:11 +0300
committerThomas Dinges <blender@dingto.org>2016-01-14 14:56:08 +0300
commit3ba9742be244db4ef24e271fd97eb490fdef7d0d (patch)
treee1343c2d0b86c55a3237d3cff4c06c7c449f469f /intern
parentcc55f97da9cca7a27f2313b7405d3aad277029d7 (diff)
Cycles: Remove the experimental CUDA kernel.
This commit removes the experimental CUDA kernel, making SSS and CMJ regular features. Several improvements have been made in the past few weeks (thanks Sergey!) which make SSS render several times faster (2-3x compared to 2.76b) on the GPU, and the increased VRAM usage has also been fixed. Therefore the experimental kernel is no longer needed. Differential Revision: https://developer.blender.org/D1726 Manual has been updated: too: https://www.blender.org/manual/render/cycles/features.html
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/blender/addon/ui.py2
-rw-r--r--intern/cycles/device/device_cuda.cpp14
-rw-r--r--intern/cycles/kernel/CMakeLists.txt3
-rw-r--r--intern/cycles/kernel/kernel_types.h5
4 files changed, 3 insertions, 21 deletions
diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py
index 76251e182b7..8d00e4850d7 100644
--- a/intern/cycles/blender/addon/ui.py
+++ b/intern/cycles/blender/addon/ui.py
@@ -187,7 +187,7 @@ class CyclesRender_PT_sampling(CyclesButtonsPanel, Panel):
sub.prop(cscene, "subsurface_samples", text="Subsurface")
sub.prop(cscene, "volume_samples", text="Volume")
- if use_cpu(context) or cscene.feature_set == 'EXPERIMENTAL':
+ if not (use_opencl(context) and cscene.feature_set != 'EXPERIMENTAL'):
layout.row().prop(cscene, "sampling_pattern", text="Pattern")
for rl in scene.render.layers:
diff --git a/intern/cycles/device/device_cuda.cpp b/intern/cycles/device/device_cuda.cpp
index 88f1a86d6ac..a91e4826b33 100644
--- a/intern/cycles/device/device_cuda.cpp
+++ b/intern/cycles/device/device_cuda.cpp
@@ -253,10 +253,7 @@ public:
string cubin;
/* attempt to use kernel provided with blender */
- if(requested_features.experimental)
- cubin = path_get(string_printf("lib/kernel_experimental_sm_%d%d.cubin", major, minor));
- else
- cubin = path_get(string_printf("lib/kernel_sm_%d%d.cubin", major, minor));
+ cubin = path_get(string_printf("lib/kernel_sm_%d%d.cubin", major, minor));
VLOG(1) << "Testing for pre-compiled kernel " << cubin;
if(path_exists(cubin)) {
VLOG(1) << "Using precompiled kernel";
@@ -275,10 +272,7 @@ public:
major, minor,
md5.c_str());
#else
- if(requested_features.experimental)
- cubin = string_printf("cycles_kernel_experimental_sm%d%d_%s.cubin", major, minor, md5.c_str());
- else
- cubin = string_printf("cycles_kernel_sm%d%d_%s.cubin", major, minor, md5.c_str());
+ cubin = string_printf("cycles_kernel_sm%d%d_%s.cubin", major, minor, md5.c_str());
#endif
cubin = path_user_get(path_join("cache", cubin));
@@ -338,10 +332,6 @@ public:
#ifdef KERNEL_USE_ADAPTIVE
command += " " + feature_build_options;
-#else
- if(requested_features.experimental) {
- command += " -D__KERNEL_EXPERIMENTAL__";
- }
#endif
const char* extra_cflags = getenv("CYCLES_CUDA_EXTRA_CFLAGS");
diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt
index ea7899e0173..5249416e838 100644
--- a/intern/cycles/kernel/CMakeLists.txt
+++ b/intern/cycles/kernel/CMakeLists.txt
@@ -260,9 +260,6 @@ if(WITH_CYCLES_CUDA_BINARIES)
foreach(arch ${CYCLES_CUDA_BINARIES_ARCH})
# Compile regular kernel
CYCLES_CUDA_KERNEL_ADD(${arch} FALSE)
-
- # Compile experimental kernel
- CYCLES_CUDA_KERNEL_ADD(${arch} TRUE)
endforeach()
add_custom_target(cycles_kernel_cuda ALL DEPENDS ${cuda_cubins})
diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h
index 8682325998d..77fc16e3d35 100644
--- a/intern/cycles/kernel/kernel_types.h
+++ b/intern/cycles/kernel/kernel_types.h
@@ -83,15 +83,10 @@ CCL_NAMESPACE_BEGIN
#define __BRANCHED_PATH__
#define __VOLUME__
#define __VOLUME_SCATTER__
-
-/* Experimental on GPU */
-#ifdef __KERNEL_EXPERIMENTAL__
#define __SUBSURFACE__
#define __CMJ__
#endif
-#endif
-
#ifdef __KERNEL_OPENCL__
/* keep __KERNEL_ADV_SHADING__ in sync with opencl_kernel_use_advanced_shading! */