openvino icon indicating copy to clipboard operation
openvino copied to clipboard

Fix #23553: [OP CONFORMANCE][TEMPLATE] Interpolate test fails in op c…

Open runzhangDL opened this issue 1 year ago • 16 comments

The test case failed because it uses a channel-last input pattern, while the linear_onnx_func() assume that all input data have the batch and channel in their first two dimensions. I've added extra condition check in the channel-last case and made it valid to continue the following operations.

Note: The implementation for channel-last input should be different from current one. However, after the input check has been changed, the test case passed already, so I didn't change the following implementation. Please let me know if there are concerns with this and I am happy to add extra adjustment.

runzhangDL avatar Mar 23 '24 16:03 runzhangDL

build_jenkins

praasz avatar Mar 25 '24 05:03 praasz

hey @runzhangDL please correct formatting to bass clang tests

mlukasze avatar Mar 25 '24 06:03 mlukasze

hey @runzhangDL please correct formatting to bass clang tests

Sure, will update soon. Do I need to fix other failed checks?

runzhangDL avatar Mar 25 '24 13:03 runzhangDL

hey @runzhangDL please correct formatting to bass clang tests

Sure, will update soon. Do I need to fix other failed checks?

I looks like these changes cause below failures - copied from Linux Static CC (Ubuntu 22.04, Python 3.11, Clang) logs. To reproduce it locally use ./bin/intel64/Debug/ov_onnx_frontend_tests

C++ exception with description "Exception from src/inference/src/cpp/infer_request.cpp:223:
Exception from reference/interpolate.hpp:430:
Axes are not correct!

[  FAILED  ] 11 tests, listed below:
[  FAILED  ] INTERPRETER.onnx_resize11_empty_constant_as_input
[  FAILED  ] INTERPRETER.onnx_resize10_down_scales_const_linear
[  FAILED  ] INTERPRETER.onnx_resize10_up_scales_const_linear
[  FAILED  ] INTERPRETER.onnx_resize11_down_scales_linear_asymmetric
[  FAILED  ] INTERPRETER.onnx_resize11_up_scales_linear_asymmetric
[  FAILED  ] INTERPRETER.onnx_resize11_up_sizes_linear_asymmetric
[  FAILED  ] INTERPRETER.onnx_resize11_down_sizes_linear_pytorch_half_pixel
[  FAILED  ] INTERPRETER.onnx_upsample6_bilinear_infer
[  FAILED  ] INTERPRETER.onnx_upsample8_linear_infer
[  FAILED  ] INTERPRETER.onnx_upsample9_scales_const_linear_infer
[  FAILED  ] INTERPRETER.onnx_empty_initializers_handling

t-jankowski avatar Mar 25 '24 13:03 t-jankowski

NTERPRETER.onnx_resize11_up_scales_linear_asymmetric

Ok I will try to look into it. It might be easier if I can see the test cases detail to debug why they failed.

runzhangDL avatar Mar 25 '24 13:03 runzhangDL

@mitruska Could you please take a look?

iefode avatar Apr 01 '24 13:04 iefode

Still working on this, will require a bit more time. It will help if someone can confirm whether we need to add support for batch-last case on interpolation, which might cause failure of other test cases? Or we just remove the interpolation case where batch was put in the last dimension?

runzhangDL avatar Apr 01 '24 13:04 runzhangDL

Sorry for the delay, I was distracted by my courseworks, and will look into this issue soon.

runzhangDL avatar Apr 03 '24 13:04 runzhangDL

build_jenkins

mlukasze avatar Apr 05 '24 05:04 mlukasze

I am still working on the interpolation implementation, should be done soon

runzhangDL avatar Apr 05 '24 14:04 runzhangDL

Hello @iefode and @runzhangDL, I can see the work is in progress;) For any changes in the Interpolate reference implementation, please add corresponding unit test to:

https://github.com/openvinotoolkit/openvino/blob/a5cf8b30d5430a94e3b62f77700d8b904cc1b592/src/plugins/template/tests/functional/op_reference/interpolate.cpp#L564

@mitruska Hi, could you please briefly tell me how to run the unit test for interpolate reference, and what's meaning of each input variables inside a single unit test array? By the way, I've completed the implementations, may you take a look if there are other potential concerns?

runzhangDL avatar Apr 06 '24 01:04 runzhangDL

@mitruska Hi, could you please briefly tell me how to run the unit test for interpolate reference, and what's meaning of each input variables inside a single unit test array? By the way, I've completed the implementations, may you take a look if there are other potential concerns?

Hello @runzhangDL, those tests are a part of ov_template_func_tests, to run call:

./ov_template_func_tests --gtest_filter="*Interpolate*"

from the directory of the binaries (usually openvino/bin/intel64/Debug or openvino/bin/intel64/Release)

The meaning of the test values can be deduced from the test param structure:

https://github.com/openvinotoolkit/openvino/blob/a5cf8b30d5430a94e3b62f77700d8b904cc1b592/src/plugins/template/tests/functional/op_reference/interpolate.cpp#L262-L272

mitruska avatar Apr 11 '24 15:04 mitruska

Apology for my delay. I will try to add extra tests next mouth. I am currently working on the final exam of the end of spring semester.

runzhangDL avatar Apr 25 '24 16:04 runzhangDL

sure thing, good luck with exams @runzhangDL :)

mlukasze avatar Apr 26 '24 05:04 mlukasze

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar May 18 '24 00:05 github-actions[bot]

@mitruska Hi Mitrus, I've added the channel-last test case at the bottom. It is basically the same to the previous test case but move the spatial axis from (2,3) to (1,2) and channel at the last. The input and expected output should be the same, because only spatial dimension was changed. The test case run successfully in my local machine. Please take a look if it is convenient and let me know any other edits are needed

runzhangDL avatar May 20 '24 07:05 runzhangDL

@mitruska Hi Mitrus, I've added the channel-last test case at the bottom. It is basically the same to the previous test case but move the spatial axis from (2,3) to (1,2) and channel at the last. The input and expected output should be the same, because only spatial dimension was changed. The test case run successfully in my local machine. Please take a look if it is convenient and let me know any other edits are needed

@mitruska Could you please take a look?

iefode avatar Jun 03 '24 14:06 iefode

hey @runzhangDL, will you find a time to finish this PR?

mlukasze avatar Jun 18 '24 09:06 mlukasze

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar Jul 03 '24 00:07 github-actions[bot]

@t-jankowski & @mitruska could you take a look, please?

mlukasze avatar Jul 03 '24 05:07 mlukasze

hey @runzhangDL, will you find a time to finish this PR?

Apology for the late reply. I will try to finish what I left now. I am currently not sure whether my implementation is correct, because the test code didn't work out to me.

runzhangDL avatar Jul 07 '24 16:07 runzhangDL

thanks! let us check it

mlukasze avatar Jul 08 '24 04:07 mlukasze

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar Jul 23 '24 00:07 github-actions[bot]

build_jenkins

mlukasze avatar Jul 30 '24 12:07 mlukasze

This PR will be closed in a week because of 2 weeks of no activity.

github-actions[bot] avatar Aug 14 '24 00:08 github-actions[bot]

This PR was closed because it has been stalled for 2 week with no activity.

github-actions[bot] avatar Aug 22 '24 00:08 github-actions[bot]