@@ -186,6 +186,17 @@ void LeakyReluCompute::Run() {
186
186
CHECK_EQ (r, 0 );
187
187
}
188
188
189
+ void SoftsignCompute::Run () {
190
+ auto & param = this ->Param <param_t >();
191
+ auto & ctx = this ->ctx_ ->As <XPUContext>();
192
+
193
+ int r = xdnn::softsign (ctx.GetRawContext (),
194
+ param.X ->data <float >(),
195
+ param.Out ->mutable_data <float >(TARGET (kXPU )),
196
+ param.X ->numel ());
197
+ CHECK_EQ (r, 0 );
198
+ }
199
+
189
200
} // namespace xpu
190
201
} // namespace kernels
191
202
} // namespace lite
@@ -197,6 +208,12 @@ REGISTER_LITE_KERNEL(
197
208
.BindOutput(" Out" , {LiteType::GetTensorTy (TARGET (kXPU ))})
198
209
.Finalize();
199
210
211
+ REGISTER_LITE_KERNEL (
212
+ relu6, kXPU , kFloat , kNCHW , paddle::lite::kernels::xpu::Relu6Compute, def)
213
+ .BindInput(" X" , {LiteType::GetTensorTy (TARGET (kXPU ))})
214
+ .BindOutput(" Out" , {LiteType::GetTensorTy (TARGET (kXPU ))})
215
+ .Finalize();
216
+
200
217
REGISTER_LITE_KERNEL (
201
218
tanh, kXPU , kFloat , kNCHW , paddle::lite::kernels::xpu::TanhCompute, def)
202
219
.BindInput(" X" , {LiteType::GetTensorTy (TARGET (kXPU ))})
@@ -289,8 +306,12 @@ REGISTER_LITE_KERNEL(leaky_relu,
289
306
.BindOutput(" Out" , {LiteType::GetTensorTy (TARGET (kXPU ))})
290
307
.Finalize();
291
308
292
- REGISTER_LITE_KERNEL (
293
- relu6, kXPU , kFloat , kNCHW , paddle::lite::kernels::xpu::Relu6Compute, def)
309
+ REGISTER_LITE_KERNEL (softsign,
310
+ kXPU ,
311
+ kFloat ,
312
+ kNCHW ,
313
+ paddle::lite::kernels::xpu::SoftsignCompute,
314
+ def)
294
315
.BindInput(" X" , {LiteType::GetTensorTy (TARGET (kXPU ))})
295
316
.BindOutput(" Out" , {LiteType::GetTensorTy (TARGET (kXPU ))})
296
317
.Finalize();
0 commit comments