From 01c7b4b17834cfac4aa3986343d0b56b3353c01e Mon Sep 17 00:00:00 2001 From: mmagician Date: Wed, 31 Jan 2024 19:47:02 +0100 Subject: [PATCH] add NNEF support for `copy` operation --- core/src/ops/math/mod.rs | 5 +++++ nnef/src/ops/nnef/mod.rs | 2 ++ 2 files changed, 7 insertions(+) diff --git a/core/src/ops/math/mod.rs b/core/src/ops/math/mod.rs index baf03431d4..0067a0d91c 100644 --- a/core/src/ops/math/mod.rs +++ b/core/src/ops/math/mod.rs @@ -579,6 +579,11 @@ element_wise!(neg, Neg, [i8, i16, i32, i64, f16, f32, f64, TDim] => |_, xs| { }; q: [i8, u8, i32] => |x: f32| -x); +element_wise!(copy, Copy, [i8, i16, i32, i64, f16, f32, f64, TDim] => |_, _| { + Ok(()) +}; +q: [i8, u8, i32] => |x: f32| x); + element_wise!(sign, Sign, [f16, f32, f64] => |_, xs| { xs.iter_mut().for_each(|x| *x = if x.is_zero() { *x } else { x.signum() }); Ok(()) diff --git a/nnef/src/ops/nnef/mod.rs b/nnef/src/ops/nnef/mod.rs index 10fa0b55cc..55dd2f20d8 100644 --- a/nnef/src/ops/nnef/mod.rs +++ b/nnef/src/ops/nnef/mod.rs @@ -81,6 +81,8 @@ pub fn tract_nnef() -> Registry { registry.register_unit_element_wise("neg", &ops::math::Neg {}); + registry.register_unit_element_wise("copy", &ops::math::Copy {}); + registry.register_element_wise( "leaky_relu", TypeId::of::(),