From 94c73cb3ac855678d1fbb350b20ed42dfe0144a4 Mon Sep 17 00:00:00 2001 From: yejianwu Date: Mon, 25 Feb 2019 09:18:51 +0800 Subject: [PATCH] fix broastcast check in eltwise --- mace/ops/eltwise.cc | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/mace/ops/eltwise.cc b/mace/ops/eltwise.cc index f035eeee..1e246c18 100644 --- a/mace/ops/eltwise.cc +++ b/mace/ops/eltwise.cc @@ -1192,12 +1192,23 @@ class EltwiseOp : public Operation { for (int i = 0; i < input_size; ++i) { if (ws->HasTensor(operator_def_->input(i)) && ws->GetTensor(operator_def_->input(i))->is_weight()) { - MACE_CHECK(TransformFilter( - context, - operator_def_.get(), - i, - OpenCLBufferType::ARGUMENT, - mem_type) == MaceStatus::MACE_SUCCESS); + if (ws->GetTensor(operator_def_->input(i))->dim_size() == 1) { + MACE_CHECK(TransformFilter( + context, + operator_def_.get(), + i, + OpenCLBufferType::ARGUMENT, + mem_type) == MaceStatus::MACE_SUCCESS); + } else if (ws->GetTensor(operator_def_->input(i))->dim_size() == 4) { + MACE_CHECK(TransformFilter( + context, + operator_def_.get(), + i, + OpenCLBufferType::IN_OUT_CHANNEL, + mem_type) == MaceStatus::MACE_SUCCESS); + } else { + MACE_NOT_IMPLEMENTED; + } } } } -- GitLab