From 3068c3bb6522e950ad57bf8c7a3c48302a1e1a46 Mon Sep 17 00:00:00 2001 From: oan Date: Wed, 11 Sep 2019 11:04:03 +0300 Subject: [PATCH] 0030959: OSD_Parallel_TBB: number of execution threads is strictly limited by the root scope Do not limit number of available threads by number of items processed within the root scope due to possibility of spawning of an additional threads within the subscopes. --- src/OSD/OSD_Parallel_TBB.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/OSD/OSD_Parallel_TBB.cxx b/src/OSD/OSD_Parallel_TBB.cxx index 43b6ec178b..9179f8dba4 100644 --- a/src/OSD/OSD_Parallel_TBB.cxx +++ b/src/OSD/OSD_Parallel_TBB.cxx @@ -40,7 +40,7 @@ void OSD_Parallel::forEachExternal (UniversalIterator& theBegin, { const Handle(OSD_ThreadPool)& aThreadPool = OSD_ThreadPool::DefaultPool(); const Standard_Integer aNbThreads = theNbItems > 0 ? - Min (theNbItems, aThreadPool->NbDefaultThreadsToLaunch()) : -1; + aThreadPool->NbDefaultThreadsToLaunch() : -1; tbb::task_scheduler_init aScheduler (aNbThreads); tbb::parallel_for_each (theBegin, theEnd, theFunctor);