aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Eigen/src/Core/products/LookupBlockingSizesTable.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Eigen/src/Core/products/LookupBlockingSizesTable.h b/Eigen/src/Core/products/LookupBlockingSizesTable.h
index 5ab4525df..39a53c8f1 100644
--- a/Eigen/src/Core/products/LookupBlockingSizesTable.h
+++ b/Eigen/src/Core/products/LookupBlockingSizesTable.h
@@ -79,6 +79,14 @@ template <typename LhsScalar,
typename RhsScalar>
bool lookupBlockingSizesFromTable(Index& k, Index& m, Index& n, Index num_threads)
{
+ if (num_threads > 1) {
+ // We don't currently have lookup tables recorded for multithread performance,
+ // and we have confirmed experimentally that our single-thread-recorded LUTs are
+ // poor for multithread performance, and our LUTs don't currently contain
+ // any annotation about multithread status (FIXME - we need that).
+ // So for now, we just early-return here.
+ return false;
+ }
return LookupBlockingSizesFromTableImpl<LhsScalar, RhsScalar>::run(k, m, n, num_threads);
}