aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h
diff options
context:
space:
mode:
authorGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2015-07-15 17:17:04 -0700
committerGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2015-07-15 17:17:04 -0700
commitb900fe47d5cc435915c8348fa1ffb6ac339c0f50 (patch)
tree16567909a2bb6cb6a37c51763af6ba0cd0f3a92e /unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h
parent4b3d697e12d021ebae9ef550bc06b94fe35bb622 (diff)
Avoid relying on a default value for the Vectorizable template parameter of the EvalRange functor
Diffstat (limited to 'unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h')
-rw-r--r--unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h b/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h
index a795f8eaa..2c5e67f82 100644
--- a/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h
+++ b/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h
@@ -75,7 +75,7 @@ class TensorExecutor<Expression, DefaultDevice, true>
// Multicore strategy: the index space is partitioned and each partition is executed on a single core
#ifdef EIGEN_USE_THREADS
-template <typename Evaluator, typename Index, bool Vectorizable = Evaluator::PacketAccess>
+template <typename Evaluator, typename Index, bool Vectorizable>
struct EvalRange {
static void run(Evaluator evaluator, const Index first, const Index last) {
eigen_assert(last > first);
@@ -129,11 +129,11 @@ class TensorExecutor<Expression, ThreadPoolDevice, Vectorizable>
std::vector<Notification*> results;
results.reserve(numblocks);
for (int i = 0; i < numblocks; ++i) {
- results.push_back(device.enqueue(&EvalRange<Evaluator, Index>::run, evaluator, i*blocksize, (i+1)*blocksize));
+ results.push_back(device.enqueue(&EvalRange<Evaluator, Index, Vectorizable>::run, evaluator, i*blocksize, (i+1)*blocksize));
}
if (numblocks * blocksize < size) {
- EvalRange<Evaluator, Index>::run(evaluator, numblocks * blocksize, size);
+ EvalRange<Evaluator, Index, Vectorizable>::run(evaluator, numblocks * blocksize, size);
}
for (int i = 0; i < numblocks; ++i) {