aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/tensors
diff options
context:
space:
mode:
authorGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2016-04-07 22:50:25 -0700
committerGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2016-04-07 22:50:25 -0700
commit7c47d3e663375743e28bfd8863af1091f3b7c8b1 (patch)
tree00984bd6a0c053393bf760f8ba35da71e874f60a /bench/tensors
parent2f2801f0961330fa16bf9787986888f49ea838d2 (diff)
Fixed the type casting benchmarks for fp16
Diffstat (limited to 'bench/tensors')
-rw-r--r--bench/tensors/tensor_benchmarks.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/bench/tensors/tensor_benchmarks.h b/bench/tensors/tensor_benchmarks.h
index 16b388abf..90b9bc741 100644
--- a/bench/tensors/tensor_benchmarks.h
+++ b/bench/tensors/tensor_benchmarks.h
@@ -46,8 +46,13 @@ template <typename Device, typename T> class BenchmarkSuite {
void typeCasting(int num_iters) {
eigen_assert(m_ == n_);
Eigen::array<TensorIndex, 2> sizes;
- sizes[0] = m_;
- sizes[1] = k_;
+ if (sizeof(T) >= sizeof(int)) {
+ sizes[0] = m_;
+ sizes[1] = k_;
+ } else {
+ sizes[0] = m_ * sizeof(T) / sizeof(int);
+ sizes[1] = k_ * sizeof(T) / sizeof(int);
+ }
const TensorMap<Tensor<int, 2, 0, TensorIndex>, Eigen::Aligned> A((int*)a_, sizes);
TensorMap<Tensor<T, 2, 0, TensorIndex>, Eigen::Aligned> B(b_, sizes);