@@ -43,47 +43,22 @@ void ActivationOpConverter<TargetT, PrecisionT>::operator()(
4343 auto output_name = op_desc.Output (" Out" ).front ();
4444 this ->engine_ ->AddOp (op_name, " Activation" , {input_name}, {output_name});
4545 this ->engine_ ->AddOpAttr (op_name, " type" , anakin_op_type_);
46+
47+ if (op_type_ == " swish" ) {
48+ float beta = boost::get<float >(op_desc.GetAttr (" beta" ));
49+ this ->engine_ ->AddOpAttr (op_name, " clip_relu_num" , beta);
50+ }
51+ if (op_type_ == " relu6" ) {
52+ float threshold = boost::get<float >(op_desc.GetAttr (" threshold" ));
53+ this ->engine_ ->AddOpAttr (op_name, " clip_relu_num" , threshold);
54+ }
4655}
4756
4857} // namespace anakin
4958} // namespace inference
5059} // namespace paddle
5160
52- #ifdef PADDLE_WITH_CUDA
53- using sigmoid_nv_fp32 =
54- ::paddle::inference::anakin::SigmoidOpConverter<::anakin::saber::NV,
55- ::anakin::Precision::FP32>;
56- using sigmoid_nv_int8 =
57- ::paddle::inference::anakin::SigmoidOpConverter<::anakin::saber::NV,
58- ::anakin::Precision::INT8>;
59- using tanh_nv_fp32 =
60- ::paddle::inference::anakin::TanhOpConverter<::anakin::saber::NV,
61- ::anakin::Precision::FP32>;
62- using tanh_nv_int8 =
63- ::paddle::inference::anakin::TanhOpConverter<::anakin::saber::NV,
64- ::anakin::Precision::INT8>;
65-
66- REGISTER_CUDA_ANAKIN_OP_CONVERTER (sigmoid, sigmoid_nv_fp32);
67- REGISTER_CUDA_INT8_ANAKIN_OP_CONVERTER (sigmoid, sigmoid_nv_int8);
68- REGISTER_CUDA_ANAKIN_OP_CONVERTER (tanh, tanh_nv_fp32);
69- REGISTER_CUDA_INT8_ANAKIN_OP_CONVERTER (tanh, tanh_nv_int8);
70- #endif
71-
72- using sigmoid_cpu_fp32 =
73- ::paddle::inference::anakin::SigmoidOpConverter<::anakin::saber::X86,
74- ::anakin::Precision::FP32>;
75- using sigmoid_cpu_int8 =
76- ::paddle::inference::anakin::SigmoidOpConverter<::anakin::saber::X86,
77- ::anakin::Precision::INT8>;
78- using tanh_cpu_fp32 =
79- ::paddle::inference::anakin::TanhOpConverter<::anakin::saber::X86,
80- ::anakin::Precision::FP32>;
81- using tanh_cpu_int8 =
82- ::paddle::inference::anakin::TanhOpConverter<::anakin::saber::X86,
83- ::anakin::Precision::INT8>;
84-
85- REGISTER_CPU_ANAKIN_OP_CONVERTER (sigmoid, sigmoid_cpu_fp32);
86- REGISTER_CPU_INT8_ANAKIN_OP_CONVERTER (sigmoid, sigmoid_cpu_int8);
87-
88- REGISTER_CPU_ANAKIN_OP_CONVERTER (tanh, tanh_cpu_fp32);
89- REGISTER_CPU_INT8_ANAKIN_OP_CONVERTER (tanh, tanh_cpu_int8);
61+ REGISTER_ANAKIN_OP_CONVERTER (sigmoid, SigmoidOpConverter);
62+ REGISTER_ANAKIN_OP_CONVERTER (tanh, TanhOpConverter);
63+ REGISTER_ANAKIN_OP_CONVERTER (swish, SwishOpConverter);
64+ REGISTER_ANAKIN_OP_CONVERTER (relu6, Relu6OpConverter);
0 commit comments