[Bf-blender-cvs] [5dde5dd44e0] master: Libmv: Use static scheduler for threading
Sergey Sharybin
noreply at git.blender.org
Mon Apr 6 15:18:39 CEST 2020
Commit: 5dde5dd44e05024a53147aef70b26c70bfecdb1b
Author: Sergey Sharybin
Date: Mon Apr 6 14:47:35 2020 +0200
Branches: master
https://developer.blender.org/rB5dde5dd44e05024a53147aef70b26c70bfecdb1b
Libmv: Use static scheduler for threading
For a real-world distortion the payload is quite uniformly
distributed across scanlines. Surely, in the corners more
iterations of minimizer is needed, but that happens in threads
without scheduling overhead.
===================================================================
M intern/libmv/libmv/simple_pipeline/camera_intrinsics_impl.h
===================================================================
diff --git a/intern/libmv/libmv/simple_pipeline/camera_intrinsics_impl.h b/intern/libmv/libmv/simple_pipeline/camera_intrinsics_impl.h
index 97abee7ab01..e1b53992dfd 100644
--- a/intern/libmv/libmv/simple_pipeline/camera_intrinsics_impl.h
+++ b/intern/libmv/libmv/simple_pipeline/camera_intrinsics_impl.h
@@ -63,7 +63,7 @@ void LookupWarpGrid::Compute(const CameraIntrinsics &intrinsics,
double aspx = (double) w / intrinsics.image_width();
double aspy = (double) h / intrinsics.image_height();
#if defined(_OPENMP)
-# pragma omp parallel for schedule(dynamic) num_threads(threads_) \
+# pragma omp parallel for schedule(static) num_threads(threads_) \
if (threads_ > 1 && height > 100)
#endif
for (int y = 0; y < height; y++) {
@@ -125,7 +125,7 @@ void LookupWarpGrid::Apply(const PixelType *input_buffer,
int channels,
PixelType *output_buffer) {
#if defined(_OPENMP)
-# pragma omp parallel for schedule(dynamic) num_threads(threads_) \
+# pragma omp parallel for schedule(static) num_threads(threads_) \
if (threads_ > 1 && height > 100)
#endif
for (int y = 0; y < height; y++) {
More information about the Bf-blender-cvs
mailing list