Browse Source

fix(dnn): fix dnn nchwxx elemwise performance

GitOrigin-RevId: 5a715d7b2a
HuaHua404-patch-4
Megvii Engine Team 2 years ago
parent
commit
16ba05a81b
2 changed files with 11 additions and 11 deletions
  1. +1
    -1
      dnn/src/arm_common/elemwise/binary/algo.h
  2. +10
    -10
      dnn/src/fallback/elemwise/opr_impl.cpp

+ 1
- 1
dnn/src/arm_common/elemwise/binary/algo.h View File

@@ -11,7 +11,7 @@ namespace arm_common {
} \
const char* name() const override { \
if (m_name.empty()) { \
m_name = ssprintf("Elemwise::AlgoBinaryCase" #case); \
m_name = ssprintf("Elemwise::AlgoBinaryCaseArmCommon" #case); \
} \
return m_name.c_str(); \
} \


+ 10
- 10
dnn/src/fallback/elemwise/opr_impl.cpp View File

@@ -267,16 +267,6 @@ ElemwiseImpl::KernParam ElemwiseImpl::make_kern_param(ElemwiseImpl* opr) {
return kern_param;
}

if (is_vector(src0.layout) && is_broadcasted_3dim_like(src1.layout, binfo)) {
kern_param.broad_cast_type = BcastType::VEC_BCASTX0X;
return kern_param;
}

if (is_vector(src1.layout) && is_broadcasted_3dim_like(src0.layout, binfo)) {
kern_param.broad_cast_type = BcastType::BCASTX0X_VEC;
return kern_param;
}

if (is_legal_layout_for_nhwc(src1.layout) &&
is_NHWC_broadcasted_channel_like(src0.layout, binfo)) {
kern_param.broad_cast_type = BcastType::BCAST111C_VEC;
@@ -302,6 +292,16 @@ ElemwiseImpl::KernParam ElemwiseImpl::make_kern_param(ElemwiseImpl* opr) {
kern_param.broad_cast_type = BcastType::BCAST101xX_VEC;
return kern_param;
}

if (is_vector(src0.layout) && is_broadcasted_3dim_like(src1.layout, binfo)) {
kern_param.broad_cast_type = BcastType::VEC_BCASTX0X;
return kern_param;
}

if (is_vector(src1.layout) && is_broadcasted_3dim_like(src0.layout, binfo)) {
kern_param.broad_cast_type = BcastType::BCASTX0X_VEC;
return kern_param;
}
} else if (opr->m_src->size() == 1) {
kern_param.broad_cast_type = BcastType::VEC;
kern_param.unary_elparam = opr->make_elemwise_op_param<1>();


Loading…
Cancel
Save