[Bf-blender-cvs] [7fcae7ba60] master: Task scheduler: Remove query for the pool's number of threads

Sergey Sharybin noreply at git.blender.org
Wed Mar 1 18:01:00 CET 2017


Commit: 7fcae7ba60ebe90cb1381e773bdfe0022fab3dc4
Author: Sergey Sharybin
Date:   Wed Mar 1 12:51:51 2017 +0100
Branches: master
https://developer.blender.org/rB7fcae7ba60ebe90cb1381e773bdfe0022fab3dc4

Task scheduler: Remove query for the pool's number of threads

Not really happy of per-pool threads limit, need to find better
approach to that. But at least it's possible to get rid of half
of the nastyness here by removing getter which was only used in
an assert statement.

That piece of code was already well-tested and this code becomes
obsolete in the new depsgraph and does no longer exists in blender
2.8 branch.

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

M	source/blender/blenkernel/intern/scene.c
M	source/blender/blenlib/BLI_task.h
M	source/blender/blenlib/intern/task.c

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

diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 56bfe5d7ff..50f4674857 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -1510,8 +1510,6 @@ static void scene_update_object_func(TaskPool * __restrict pool, void *taskdata,
 		if (add_to_stats) {
 			StatisicsEntry *entry;
 
-			BLI_assert(threadid < BLI_pool_get_num_threads(pool));
-
 			entry = MEM_mallocN(sizeof(StatisicsEntry), "update thread statistics");
 			entry->object = object;
 			entry->start_time = start_time;
diff --git a/source/blender/blenlib/BLI_task.h b/source/blender/blenlib/BLI_task.h
index 08b9629610..cd2054a5ec 100644
--- a/source/blender/blenlib/BLI_task.h
+++ b/source/blender/blenlib/BLI_task.h
@@ -98,9 +98,6 @@ void BLI_task_pool_cancel(TaskPool *pool);
 /* stop all worker threads */
 void BLI_task_pool_stop(TaskPool *pool);
 
-/* get number of threads allowed to be used by this pool */
-int BLI_pool_get_num_threads(TaskPool *pool);
-
 /* set number of threads allowed to be used by this pool */
 void BLI_pool_set_num_threads(TaskPool *pool, int num_threads);
 
diff --git a/source/blender/blenlib/intern/task.c b/source/blender/blenlib/intern/task.c
index c4761e9f7e..a65ef881af 100644
--- a/source/blender/blenlib/intern/task.c
+++ b/source/blender/blenlib/intern/task.c
@@ -687,16 +687,6 @@ void BLI_task_pool_work_and_wait(TaskPool *pool)
 	BLI_mutex_unlock(&pool->num_mutex);
 }
 
-int BLI_pool_get_num_threads(TaskPool *pool)
-{
-	if (pool->num_threads != 0) {
-		return pool->num_threads;
-	}
-	else {
-		return BLI_task_scheduler_num_threads(pool->scheduler);
-	}
-}
-
 void BLI_pool_set_num_threads(TaskPool *pool, int num_threads)
 {
 	/* NOTE: Don't try to modify threads while tasks are running! */




More information about the Bf-blender-cvs mailing list