65 lines
2.1 KiB
Diff
65 lines
2.1 KiB
Diff
https://github.com/PixarAnimationStudios/OpenSubdiv/pull/1234
|
|
|
|
From 7375c99a4d1337f9b79775fb2c753e7865968642 Mon Sep 17 00:00:00 2001
|
|
From: Artur Sinila <freesoftware@logarithmus.dev>
|
|
Date: Sun, 25 Jul 2021 20:34:48 +0300
|
|
Subject: [PATCH 1/2] Fix typo: schedular -> scheduler
|
|
|
|
---
|
|
opensubdiv/osd/tbbEvaluator.h | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/opensubdiv/osd/tbbEvaluator.h b/opensubdiv/osd/tbbEvaluator.h
|
|
index 6bd365bc5..886a94837 100644
|
|
--- a/opensubdiv/osd/tbbEvaluator.h
|
|
+++ b/opensubdiv/osd/tbbEvaluator.h
|
|
@@ -1226,7 +1226,7 @@ class TbbEvaluator {
|
|
/// \brief synchronize all asynchronous computation invoked on this device.
|
|
static void Synchronize(void *deviceContext = NULL);
|
|
|
|
- /// \brief initialize tbb task schedular
|
|
+ /// \brief initialize tbb task scheduler
|
|
/// (optional: client may use tbb::task_scheduler_init)
|
|
///
|
|
/// @param numThreads how many threads
|
|
|
|
From 9079a517f406afba9ea50657b0a0786ad7a7bdcb Mon Sep 17 00:00:00 2001
|
|
From: Artur Sinila <freesoftware@logarithmus.dev>
|
|
Date: Sun, 25 Jul 2021 20:58:27 +0300
|
|
Subject: [PATCH 2/2] Support oneTBB 2021
|
|
|
|
---
|
|
opensubdiv/osd/tbbEvaluator.cpp | 12 +++++++-----
|
|
1 file changed, 7 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/opensubdiv/osd/tbbEvaluator.cpp b/opensubdiv/osd/tbbEvaluator.cpp
|
|
index c98db9f6d..66c2ed58f 100644
|
|
--- a/opensubdiv/osd/tbbEvaluator.cpp
|
|
+++ b/opensubdiv/osd/tbbEvaluator.cpp
|
|
@@ -25,7 +25,8 @@
|
|
#include "../osd/tbbEvaluator.h"
|
|
#include "../osd/tbbKernel.h"
|
|
|
|
-#include <tbb/task_scheduler_init.h>
|
|
+#define TBB_PREVIEW_GLOBAL_CONTROL true
|
|
+#include <tbb/global_control.h>
|
|
|
|
namespace OpenSubdiv {
|
|
namespace OPENSUBDIV_VERSION {
|
|
@@ -215,10 +216,11 @@ TbbEvaluator::Synchronize(void *) {
|
|
/* static */
|
|
void
|
|
TbbEvaluator::SetNumThreads(int numThreads) {
|
|
- if (numThreads == -1) {
|
|
- tbb::task_scheduler_init init;
|
|
- } else {
|
|
- tbb::task_scheduler_init init(numThreads);
|
|
+ if (numThreads != -1) {
|
|
+ tbb::global_control tbb_global_control(
|
|
+ tbb::global_control::max_allowed_parallelism,
|
|
+ numThreads
|
|
+ );
|
|
}
|
|
}
|
|
|