[Bf-blender-cvs] [43285ec] cycles_kernel_split: Cycles kernel split: Remove global static variable

Sergey Sharybin noreply at git.blender.org
Wed May 6 14:46:33 CEST 2015


Commit: 43285ecf9374ffcadd1b663b69d6af04346f788a
Author: Sergey Sharybin
Date:   Wed May 6 17:45:28 2015 +0500
Branches: cycles_kernel_split
https://developer.blender.org/rB43285ecf9374ffcadd1b663b69d6af04346f788a

Cycles kernel split: Remove global static variable

Things like this actually belongs to the session, no need to keep it
more global that that.

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

M	intern/cycles/render/session.cpp
M	intern/cycles/render/session.h

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

diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index ffd3e19..5569d77 100644
--- a/intern/cycles/render/session.cpp
+++ b/intern/cycles/render/session.cpp
@@ -35,9 +35,6 @@
 
 CCL_NAMESPACE_BEGIN
 
-#define OPTIMAL_CLOSURE_COUNT 1
-static int maxclosure = OPTIMAL_CLOSURE_COUNT;
-
 /* Note about  preserve_tile_device option for tile manager:
  * progressive refine and viewport rendering does requires tiles to
  * always be allocated for the same device
@@ -81,6 +78,9 @@ Session::Session(const SessionParams& params_)
 	gpu_need_tonemap = false;
 	pause = false;
 	kernels_loaded = false;
+
+	/* TODO(sergey): Check if it's indeed optimal value for the split kernel. */
+	max_closure_global = 1;
 }
 
 Session::~Session()
@@ -966,10 +966,8 @@ int Session::max_closure_count_get()
 		int num_closures = scene->shaders[i]->graph->get_num_closures();
 		max_closures = max(max_closures, num_closures);
 	}
-	if(max_closures > maxclosure) {
-		maxclosure = max_closures;
-	}
-	return maxclosure;
+	max_closure_global = max(max_closure_global, max_closures);
+	return max_closure_global;
 }
 
 CCL_NAMESPACE_END
diff --git a/intern/cycles/render/session.h b/intern/cycles/render/session.h
index b04170c..da50292 100644
--- a/intern/cycles/render/session.h
+++ b/intern/cycles/render/session.h
@@ -205,7 +205,9 @@ protected:
 
 	vector<RenderBuffers *> tile_buffers;
 
-	/* Number of closures for split kernel. */
+	/* ** Number of closures for split kernel. ** */
+	/* Maximumnumber of closure during session timelife. */
+	int max_closure_global;
 	int max_closure_count_get();
 };




More information about the Bf-blender-cvs mailing list