diff --git a/mace/core/tensor.h b/mace/core/tensor.h index a0ce271b10d76e6cf731ba18cafb8cf2dee82ef1..aef579691f421b0ec48cfee2bfd82b362bb0050f 100644 --- a/mace/core/tensor.h +++ b/mace/core/tensor.h @@ -217,7 +217,11 @@ class Tensor { inline void Reshape(const std::vector &shape) { shape_ = shape; - MACE_CHECK(raw_size() <= buffer_->size()); + if (has_opencl_image()) { + MACE_CHECK(raw_size() <= 4 * buffer_->size()); + } else { + MACE_CHECK(raw_size() <= buffer_->size()); + } } inline MaceStatus Resize(const std::vector &shape) {