aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/OMP/OMPScheduler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/OMP/OMPScheduler.cpp')
-rw-r--r--src/runtime/OMP/OMPScheduler.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/runtime/OMP/OMPScheduler.cpp b/src/runtime/OMP/OMPScheduler.cpp
index 1dd2511990..3b30f1e56b 100644
--- a/src/runtime/OMP/OMPScheduler.cpp
+++ b/src/runtime/OMP/OMPScheduler.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2018 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -71,15 +71,12 @@ void OMPScheduler::schedule(ICPPKernel *kernel, unsigned int split_dimension)
}
else
{
- #pragma omp parallel num_threads(info.num_threads)
+ #pragma omp parallel private(info) num_threads(info.num_threads)
{
- #pragma omp for
- for(int t = 0; t < info.num_threads; ++t)
- {
- Window win = max_window.split_window(split_dimension, t, info.num_threads);
- info.thread_id = t;
- kernel->run(win, info);
- }
+ const int tid = omp_get_thread_num();
+ Window win = max_window.split_window(split_dimension, tid, info.num_threads);
+ info.thread_id = tid;
+ kernel->run(win, info);
}
}
}