From 38d7aae3b7442aaa7e9c9bc030a4b63c7be2e6cf Mon Sep 17 00:00:00 2001 From: chenyu Date: Fri, 28 Feb 2025 14:09:22 -0500 Subject: [PATCH] onnx fmod (#9307) --- extra/onnx.py | 2 +- test/external/external_test_onnx_backend.py | 7 +------ 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/extra/onnx.py b/extra/onnx.py index 15d93efc9d..e6aeb4784e 100644 --- a/extra/onnx.py +++ b/extra/onnx.py @@ -317,7 +317,7 @@ def get_onnx_ops(): def BitwiseXor(x:Tensor,y:Tensor): return x ^ y def BitwiseNot(x:Tensor): return ~x def Mod(x:Tensor,y:Tensor,fmod=0): - if fmod != 0: raise NotImplementedError("float mod is not supported") + if fmod: return x - x.div(y, rounding_mode="trunc") * y return x % y # ***** Casting Ops ***** diff --git a/test/external/external_test_onnx_backend.py b/test/external/external_test_onnx_backend.py index dece6a21dc..a32dc30144 100644 --- a/test/external/external_test_onnx_backend.py +++ b/test/external/external_test_onnx_backend.py @@ -77,6 +77,7 @@ backend_test.exclude('cast_no_saturate') backend_test.exclude('test_dequantizelinear_e4m3fn_float16_cpu') backend_test.exclude('test_max_float16_cpu') backend_test.exclude('test_min_float16_cpu') +backend_test.exclude('test_mod_mixed_sign_float16_cpu') backend_test.exclude('test_dequantizelinear_int4_cpu') backend_test.exclude('test_dequantizelinear_uint4_cpu') @@ -99,12 +100,6 @@ backend_test.exclude('test_nonzero_*') backend_test.exclude('test_pow_types_int32_int32_cpu') backend_test.exclude('test_pow_types_int64_int64_cpu') -# no support for fmod -backend_test.exclude('test_mod_int64_fmod_cpu') -backend_test.exclude('test_mod_mixed_sign_float16_cpu') -backend_test.exclude('test_mod_mixed_sign_float32_cpu') -backend_test.exclude('test_mod_mixed_sign_float64_cpu') - # no boolean ops (2d, 3d, 4d) backend_test.exclude('test_bitshift_*')