Minor cleanup

Signed-off-by: Kainan Cha <kainan.cha@verisilicon.com>
This commit is contained in:
Kainan Cha 2021-03-19 11:12:12 +08:00
parent cfc70c48df
commit 0d7afd9d51
6 changed files with 57 additions and 52 deletions

View File

@ -35,13 +35,13 @@ namespace ops {
NAME(Graph* graph); \ NAME(Graph* graph); \
}; };
DECLARE_NO_PARAMETER_ACTIVATION(Relu); DECLARE_NO_PARAMETER_ACTIVATION(Relu)
DECLARE_NO_PARAMETER_ACTIVATION(Relu1); DECLARE_NO_PARAMETER_ACTIVATION(Relu1)
DECLARE_NO_PARAMETER_ACTIVATION(Relu6); DECLARE_NO_PARAMETER_ACTIVATION(Relu6)
DECLARE_NO_PARAMETER_ACTIVATION(Elu); DECLARE_NO_PARAMETER_ACTIVATION(Elu)
DECLARE_NO_PARAMETER_ACTIVATION(Tanh); DECLARE_NO_PARAMETER_ACTIVATION(Tanh)
DECLARE_NO_PARAMETER_ACTIVATION(Sigmoid); DECLARE_NO_PARAMETER_ACTIVATION(Sigmoid)
DECLARE_NO_PARAMETER_ACTIVATION(HardSwish); DECLARE_NO_PARAMETER_ACTIVATION(HardSwish)
#undef DEFINE_NO_PARAMETER_ACTIVATION #undef DEFINE_NO_PARAMETER_ACTIVATION

View File

@ -35,24 +35,28 @@ namespace ops {
NAME(Graph* graph); \ NAME(Graph* graph); \
}; };
DELCATE_ELEMENTWISE_OP(Abs); DELCATE_ELEMENTWISE_OP(Abs)
DELCATE_ELEMENTWISE_OP(Sin); DELCATE_ELEMENTWISE_OP(Sin)
// TODO(jiangbo): enable it when ovxlib supports `Cos` // TODO(jiangbo): enable it when internal ops supports `Cos`
//DELCATE_ELEMENTWISE_OP(Cos); //DELCATE_ELEMENTWISE_OP(Cos)
DELCATE_ELEMENTWISE_OP(Exp); DELCATE_ELEMENTWISE_OP(Exp)
DELCATE_ELEMENTWISE_OP(Log); DELCATE_ELEMENTWISE_OP(Log)
DELCATE_ELEMENTWISE_OP(Sqrt); DELCATE_ELEMENTWISE_OP(Sqrt)
DELCATE_ELEMENTWISE_OP(Rsqrt); DELCATE_ELEMENTWISE_OP(Rsqrt)
DELCATE_ELEMENTWISE_OP(Square); DELCATE_ELEMENTWISE_OP(Square)
DELCATE_ELEMENTWISE_OP(LogicalNot); DELCATE_ELEMENTWISE_OP(LogicalNot)
DELCATE_ELEMENTWISE_OP(Minimum); DELCATE_ELEMENTWISE_OP(Minimum)
DELCATE_ELEMENTWISE_OP(Maximum); DELCATE_ELEMENTWISE_OP(Maximum)
DELCATE_ELEMENTWISE_OP(Add); DELCATE_ELEMENTWISE_OP(Add)
DELCATE_ELEMENTWISE_OP(Sub); DELCATE_ELEMENTWISE_OP(Sub)
DELCATE_ELEMENTWISE_OP(Div); DELCATE_ELEMENTWISE_OP(Div)
DELCATE_ELEMENTWISE_OP(Multiply); DELCATE_ELEMENTWISE_OP(Pow)
DELCATE_ELEMENTWISE_OP(Pow);
class Multiply : public Operation {
public:
Multiply(Graph* graph, float scale = 1.0f);
};
#undef DELCATE_ELEMENTWISE_OP #undef DELCATE_ELEMENTWISE_OP

View File

@ -33,11 +33,11 @@ namespace ops {
#define DEFINE_NO_PARAMETER_ACTIVATION(NAME, VSI_OP_CODE) \ #define DEFINE_NO_PARAMETER_ACTIVATION(NAME, VSI_OP_CODE) \
NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {} NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {}
DEFINE_NO_PARAMETER_ACTIVATION(Relu, VSI_NN_OP_RELU); DEFINE_NO_PARAMETER_ACTIVATION(Relu, VSI_NN_OP_RELU)
DEFINE_NO_PARAMETER_ACTIVATION(Relu1, VSI_NN_OP_RELU1); DEFINE_NO_PARAMETER_ACTIVATION(Relu1, VSI_NN_OP_RELU1)
DEFINE_NO_PARAMETER_ACTIVATION(Relu6, VSI_NN_OP_RELU6); DEFINE_NO_PARAMETER_ACTIVATION(Relu6, VSI_NN_OP_RELU6)
DEFINE_NO_PARAMETER_ACTIVATION(Elu, VSI_NN_OP_ELU); DEFINE_NO_PARAMETER_ACTIVATION(Elu, VSI_NN_OP_ELU)
DEFINE_NO_PARAMETER_ACTIVATION(Sigmoid, VSI_NN_OP_SIGMOID); DEFINE_NO_PARAMETER_ACTIVATION(Sigmoid, VSI_NN_OP_SIGMOID)
#undef DEFINE_NO_PARAMETER_ACTIVATION #undef DEFINE_NO_PARAMETER_ACTIVATION

View File

@ -33,34 +33,35 @@ namespace ops {
#define DEFINE_ELEMENTWISE_UNARY_OP(NAME, VSI_OP_CODE) \ #define DEFINE_ELEMENTWISE_UNARY_OP(NAME, VSI_OP_CODE) \
NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {} NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {}
DEFINE_ELEMENTWISE_UNARY_OP(Abs, VSI_NN_OP_ABS); DEFINE_ELEMENTWISE_UNARY_OP(Abs, VSI_NN_OP_ABS)
DEFINE_ELEMENTWISE_UNARY_OP(Sin, VSI_NN_OP_SIN); DEFINE_ELEMENTWISE_UNARY_OP(Sin, VSI_NN_OP_SIN)
// TODO(jiangbo): enable it when ovxlib supports `Cos` // TODO(jiangbo): enable it when ovxlib supports `Cos`
//DEFINE_ELEMENTWISE_UNARY_OP(Cos, VSI_NN_OP_COS); //DEFINE_ELEMENTWISE_UNARY_OP(Cos, VSI_NN_OP_COS)
DEFINE_ELEMENTWISE_UNARY_OP(Exp, VSI_NN_OP_EXP); DEFINE_ELEMENTWISE_UNARY_OP(Exp, VSI_NN_OP_EXP)
DEFINE_ELEMENTWISE_UNARY_OP(Log, VSI_NN_OP_LOG); DEFINE_ELEMENTWISE_UNARY_OP(Log, VSI_NN_OP_LOG)
DEFINE_ELEMENTWISE_UNARY_OP(Sqrt, VSI_NN_OP_SQRT); DEFINE_ELEMENTWISE_UNARY_OP(Sqrt, VSI_NN_OP_SQRT)
DEFINE_ELEMENTWISE_UNARY_OP(Rsqrt, VSI_NN_OP_RSQRT); DEFINE_ELEMENTWISE_UNARY_OP(Rsqrt, VSI_NN_OP_RSQRT)
DEFINE_ELEMENTWISE_UNARY_OP(Square, VSI_NN_OP_SQUARE); DEFINE_ELEMENTWISE_UNARY_OP(Square, VSI_NN_OP_SQUARE)
DEFINE_ELEMENTWISE_UNARY_OP(LogicalNot, VSI_NN_OP_LOGICAL_NOT); DEFINE_ELEMENTWISE_UNARY_OP(LogicalNot, VSI_NN_OP_LOGICAL_NOT)
#undef DEFINE_ELEMENTWISE_UNARY_OP #undef DEFINE_ELEMENTWISE_UNARY_OP
#define DEFINE_ELEMENTWISE_BINARY_OP(NAME, VSI_OP_CODE) \ #define DEFINE_ELEMENTWISE_BINARY_OP(NAME, VSI_OP_CODE) \
NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE, 2, 1) {} NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE, 2, 1) {}
DEFINE_ELEMENTWISE_BINARY_OP(Minimum, VSI_NN_OP_MINIMUM); DEFINE_ELEMENTWISE_BINARY_OP(Minimum, VSI_NN_OP_MINIMUM)
DEFINE_ELEMENTWISE_BINARY_OP(Maximum, VSI_NN_OP_MAXIMUM); DEFINE_ELEMENTWISE_BINARY_OP(Maximum, VSI_NN_OP_MAXIMUM)
DEFINE_ELEMENTWISE_BINARY_OP(Add, VSI_NN_OP_ADD); DEFINE_ELEMENTWISE_BINARY_OP(Add, VSI_NN_OP_ADD)
DEFINE_ELEMENTWISE_BINARY_OP(Sub, VSI_NN_OP_SUBTRACT); DEFINE_ELEMENTWISE_BINARY_OP(Sub, VSI_NN_OP_SUBTRACT)
DEFINE_ELEMENTWISE_BINARY_OP(Div, VSI_NN_OP_DIVIDE); DEFINE_ELEMENTWISE_BINARY_OP(Div, VSI_NN_OP_DIVIDE)
DEFINE_ELEMENTWISE_BINARY_OP(Pow, VSI_NN_OP_POW); DEFINE_ELEMENTWISE_BINARY_OP(Pow, VSI_NN_OP_POW)
#undef DEFINE_ELEMENTWISE_BINARY_OP #undef DEFINE_ELEMENTWISE_BINARY_OP
Multiply::Multiply(Graph* graph) : Operation(graph, VSI_NN_OP_MULTIPLY, 2, 1) { Multiply::Multiply(Graph* graph, float scale)
this->impl()->node()->nn_param.multiply.scale = 1.0f; : Operation(graph, VSI_NN_OP_MULTIPLY, 2, 1) {
}; this->impl()->node()->nn_param.multiply.scale = scale;
}
} // namespace ops } // namespace ops
} // namespace vx } // namespace vx

View File

@ -32,8 +32,8 @@ namespace ops {
#define DEFINE_SIMPLE_OP(NAME, VSI_OP_CODE) \ #define DEFINE_SIMPLE_OP(NAME, VSI_OP_CODE) \
NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {} NAME::NAME(Graph* graph) : Operation(graph, VSI_OP_CODE) {}
DEFINE_SIMPLE_OP(DataConvert, VSI_NN_OP_DATACONVERT); DEFINE_SIMPLE_OP(DataConvert, VSI_NN_OP_DATACONVERT)
DEFINE_SIMPLE_OP(Neg, VSI_NN_OP_NEG); DEFINE_SIMPLE_OP(Neg, VSI_NN_OP_NEG)
#undef DEFINE_SIMPLE_OP #undef DEFINE_SIMPLE_OP