openvino icon indicating copy to clipboard operation
openvino copied to clipboard

[PT FE] Add aten::expm1

Open LucaTamSapienza opened this issue 1 year ago • 24 comments

Details:

added aten::expm1 operation I'm having some problems during the tests; I think they're related to the frontend.cpp file. My question is if I need to create a class to support the expm1 operation and add it inside the transform.cpp file? After that I would call it inside the frontend.cpp like this manager.register_pass<ov::frontend::pytorch::pass::Class_name>();

Tickets:

  • Closes #20578

Problem

E openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141: E FrontEnd API failed with OpConversionFailure: E Model wasn't fully converted. E Summary: E -- No conversion rule found for operations: aten::expm1

/opt/intel/openvino_2023.3.0/python/openvino/frontend/frontend.py:18: OpConversionFailure

LucaTamSapienza avatar Feb 03 '24 17:02 LucaTamSapienza

@LucaTamSapienza, no you should not create transformation and register it into frontend (it is different approach for enabling operations used when on direct translation step we have no enough info to convert operation (e.g. when we should know which operation consume outputs of this one for combain translation into one step) and/or required modification on model graph replacing some parts.

According to error logs on ci, looks like your operation successfully registered, but it has more inputs, then you specify into check_

Model wasn't fully converted. Failed operations detailed log:
-- aten::expm1 with a message:
Exception happened during conversion of operation aten::expm1 with schema aten::expm1(Tensor self) -> Tensor
Check 'context.input_is_none(i)' failed at src/frontends/pytorch/src/utils.cpp:24:
FrontEnd API failed with OpConversionFailure:
Got more inputs than expected.

there is also aten::expm1(Tensor self, *, Tensor(a!) out) -> Tensor(a!)

maybe it used in your case?

eaidova avatar Feb 07 '24 14:02 eaidova

Thank you very much for your code review @eaidova ; I will proceed to implement all the corrections.

LucaTamSapienza avatar Feb 07 '24 14:02 LucaTamSapienza

@LucaTamSapienza thanks, looks good. Could you please try to support torch.expm1(x, out=out) case too? ypu can find example how to support out argument in https://github.com/openvinotoolkit/openvino/blob/master/src/frontends/pytorch/src/op/erf.cpp#L28

P.S. please also fix code style

eaidova avatar Feb 12 '24 04:02 eaidova

@eaidova Thanks again for your code review, i'll implements the support for torch.expm1(x, out=out) and fix the code style in the next hours.

LucaTamSapienza avatar Feb 12 '24 16:02 LucaTamSapienza

I'm having some problem with the installation of clang-format-9 to check the code style because for ubuntu 22.04 it's not longer avaible.

LucaTamSapienza avatar Feb 13 '24 17:02 LucaTamSapienza

@eaidova Unfortunately, as you can see int this PR #22832 i'm not able to fix code style. I followed the instructions on this page, but since I have the latest version of Ubuntu (22.04), the clang-format-9 package is not available for it. In the next few days, I'll downgrade to Ubuntu 20.04; hopefully, this will fix the issue. I'm sorry for the inconvenience.

LucaTamSapienza avatar Feb 15 '24 18:02 LucaTamSapienza

@LucaTamSapienza jugging by ci logs, the issue in order for includes, you need sort operations headers in alphabetical order to pass code style check

eaidova avatar Feb 16 '24 08:02 eaidova

@LucaTamSapienza

looks like now issue with presicion of implemented op:

FAILED install/tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - dtype:float64 ] - AssertionError: dtype validation failed: ov=torch.float32 vs fw=torch.float64
FAILED install/tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - dtype:float64 ] - AssertionError: dtype validation failed: ov=torch.float32 vs fw=torch.float64
FAILED install/tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - dtype:float64 ] - AssertionError: dtype validation failed: ov=torch.float32 vs fw=torch.float64

eaidova avatar Feb 16 '24 15:02 eaidova

@eaidova I'm solving it.

LucaTamSapienza avatar Feb 16 '24 15:02 LucaTamSapienza

@eaidova I'm having some issues with this error; I need a bit more time to fix it. It will be ready by tomorrow.

LucaTamSapienza avatar Feb 16 '24 18:02 LucaTamSapienza

To fix the tests, I tried to perform some checks on the type of the element before casting it to f::32. However, I'm still getting the same errors, and I don't quite understand the reason. Could you provide some advice?

LucaTamSapienza avatar Feb 17 '24 18:02 LucaTamSapienza

@mvafin Hi, thank you for the advice. I added the int types to the tests as you requested. I'm really putting a lot of effort into fixing this error, but I can't figure it out.

FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] - openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:
FAILED ../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] - RuntimeError: Couldn't get TorchScript module by tracing. With exception:

Basically as you can see every single test is failing. When the float input is provided gives me problems with conversion, i.e.

___________________________________________________ TestExpm1.test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] ____________________________________________________

self = <test_expm1.TestExpm1 object at 0x7fad77d36650>, mode = '', dtype = 'float64', inputs = [1, 2, 3, 4, 5, 6], ie_device = 'GPU', precision = 'FP16', ir_version = 11

    @pytest.mark.nightly
    @pytest.mark.precommit
    @pytest.mark.parametrize("mode,dtype", [
        ("", "float32"), ("", "float64"), ("", "int32"), ("", "int64"),
        ("out", "float32"), ("out", "float64"), ("out", "int32"), ("out", "int64")])
    @pytest.mark.parametrize("inputs", [[0, 1, 2, 3, 4, 5], [-2, -1, 0, 1, 2, 3], [1, 2, 3, 4, 5, 6]])
    def test_expm1(self, mode, dtype, inputs, ie_device, precision, ir_version):
>       self._test(
            *self.create_model(mode, dtype),
            ie_device,
            precision,
            ir_version,
            trace_model=True,
            freeze_model=False,
            kwargs_to_prepare_input={"inputs": inputs, "dtype": dtype, "out": mode == "out"}
        )

../tests/layer_tests/pytorch_tests/test_expm1.py:55: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py:124: in _test
    smodel, converted_model = self.convert_directly_via_frontend(
../tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py:240: in convert_directly_via_frontend
    om = fe.convert(im)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <FrontEnd 'pytorch'>, model = <openvino._pyopenvino.InputModel object at 0x7fad77bb1d50>

    def convert(self, model: Union[Model, InputModel]) -> Model:
>       converted_model = super().convert(model)
E       openvino._pyopenvino.OpConversionFailure: Check 'is_conversion_successful' failed at src/frontends/pytorch/src/frontend.cpp:141:
E       FrontEnd API failed with OpConversionFailure:
E       Model wasn't fully converted.
E       Summary:
E       -- No conversion rule found for operations: aten::expm1

/opt/intel/openvino_2023.3.0/python/openvino/frontend/frontend.py:18: OpConversionFailure
---------------------------------------------------------------------------------------------- Captured stdout call -----------------------------------------------------------------------------------------------
graph(%self : __torch__.test_expm1.___torch_mangle_155.aten_expm1,
      %x.1 : Double(6, strides=[1], requires_grad=0, device=cpu)):
  %2 : Device = prim::Constant[value="cpu"]() # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %3 : int = prim::Constant[value=7]() # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %4 : bool = prim::Constant[value=0]() # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %5 : bool = prim::Constant[value=0]() # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %6 : NoneType = prim::Constant()
  %x : Double(6, strides=[1], requires_grad=0, device=cpu) = aten::to(%x.1, %2, %3, %4, %5, %6) # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %8 : Double(6, strides=[1], requires_grad=0, device=cpu) = aten::expm1(%x) # /home/luca/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  return (%8)

Now that i added int type in the tests i also see this failing tests:

___________________________________________________ TestExpm1.test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] ___________________________________________________

self = aten_expm1(), x = tensor([1, 2, 3, 4, 5, 6], dtype=torch.int32), y = tensor([0, 0, 0, 0, 0, 0], dtype=torch.int32)

    def forward_out(self, x, y):
>       return torch.expm1(x.type(self.dtype), out=y), y
E       RuntimeError: result type Float can't be cast to the desired output type Int

../tests/layer_tests/pytorch_tests/test_expm1.py:40: RuntimeError

During handling of the above exception, another exception occurred:

self = <test_expm1.TestExpm1 object at 0x7fad77d36920>, mode = 'out', dtype = 'int32', inputs = [1, 2, 3, 4, 5, 6], ie_device = 'GPU', precision = 'FP16', ir_version = 11

    @pytest.mark.nightly
    @pytest.mark.precommit
    @pytest.mark.parametrize("mode,dtype", [
        ("", "float32"), ("", "float64"), ("", "int32"), ("", "int64"),
        ("out", "float32"), ("out", "float64"), ("out", "int32"), ("out", "int64")])
    @pytest.mark.parametrize("inputs", [[0, 1, 2, 3, 4, 5], [-2, -1, 0, 1, 2, 3], [1, 2, 3, 4, 5, 6]])
    def test_expm1(self, mode, dtype, inputs, ie_device, precision, ir_version):
>       self._test(
            *self.create_model(mode, dtype),
            ie_device,
            precision,
            ir_version,
            trace_model=True,
            freeze_model=False,
            kwargs_to_prepare_input={"inputs": inputs, "dtype": dtype, "out": mode == "out"}
        )

../tests/layer_tests/pytorch_tests/test_expm1.py:55: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py:124: in _test
    smodel, converted_model = self.convert_directly_via_frontend(
../tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py:232: in convert_directly_via_frontend
    decoder = TorchScriptPythonDecoder(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <openvino.frontend.pytorch.ts_decoder.TorchScriptPythonDecoder object at 0x7fad77b4ad90>, pt_module = aten_expm1(), graph_element = None
example_input = [tensor([1, 2, 3, 4, 5, 6], dtype=torch.int32), tensor([0, 0, 0, 0, 0, 0], dtype=torch.int32)], alias_db = None, shared_memory = True, skip_freeze = True

    def __init__(self, pt_module, graph_element=None, example_input=None, alias_db=None, shared_memory=True, skip_freeze=False):
        Decoder.__init__(self)
        # We store every decoder created by this decoder so that all them are not deleted until the first decoder is deleted
        self.m_decoders = []
        self._input_signature = None
        self._shared_memory = shared_memory
        self._input_is_list = False
        if graph_element is None:
            try:
                pt_module = self._get_scripted_model(
                    pt_module, example_input, skip_freeze)
            except Exception as e:
                if example_input is not None:
                    msg = "tracing"
                    help_msg = "Please check correctness of provided 'example_input'. "
                    "Sometimes models can be converted in scripted mode, please try running "
                    "conversion without 'example_input'."
                else:
                    msg = "scripting"
                    help_msg = "\nTracing sometimes provide better results, please provide valid 'example_input' argument."
>               raise RuntimeError(
                    f"Couldn't get TorchScript module by {msg}. With exception:\n{e}\n{help_msg} "
                    "You can also provide TorchScript module that you obtained"
                    " yourself, please refer to PyTorch documentation: "
                    "https://pytorch.org/tutorials/beginner/Intro_to_TorchScript_tutorial.html.")
E               RuntimeError: Couldn't get TorchScript module by tracing. With exception:
E               result type Float can't be cast to the desired output type Int
E               Please check correctness of provided 'example_input'.  You can also provide TorchScript module that you obtained yourself, please refer to PyTorch documentation: https://pytorch.org/tutorials/beginner/Intro_to_TorchScript_tutorial.html.

/opt/intel/openvino_2023.3.0/python/openvino/frontend/pytorch/ts_decoder.py:39: RuntimeError

LucaTamSapienza avatar Feb 19 '24 13:02 LucaTamSapienza

@LucaTamSapienza Majority of tests fail with No conversion rule found for operations: aten::expm1 which means you didn't rebuild openvino to include your code. Can you see log from github actions? https://github.com/openvinotoolkit/openvino/actions/runs/7960037103/job/21729112383?pr=22642 It shows only 6 failed test. Those tests are for out case and when input is int. You need out to be fp32 for int case, most likely.

mvafin avatar Feb 19 '24 14:02 mvafin

@mvafin, I thought that building only openvino_pytorch_frontend was enough. Isn't it? like this

make -j8 openvino_pytorch_frontend

LucaTamSapienza avatar Feb 19 '24 15:02 LucaTamSapienza

@mvafin, I thought that building only openvino_pytorch_frontend was enough. Isn't it? like this

make -j8 openvino_pytorch_frontend

Do you have openvino release installed? Where is your openvino module installed?

>>> import openvino
>>> openvino.__file__

That should point to the bin directory. If you build and install wheel you need to rebuild and install it again

mvafin avatar Feb 19 '24 15:02 mvafin

@mvafin I apologize for the delayed response. I bought a new PC (Mbp M2 Pro) and was setting it up to work with OpenVINO. Coming from Linux, I am facing some difficulties. Returning to our previous conversation, I checked the logs and I noticed differences from my test results when running the command (py.test <path_to_test>). I don't quite understand what could be causing this. Running the command you provided

>>>import openvino
>>>openvino.__file__

I get the following: /Users/lucatam/Library/Python/3.9/lib/python/site-packages/openvino/init.py. I'm sorry, but at the moment, I am quite confused as it makes me think that all this time I was working with a non-functional environment. Could you provide some clarification?

LucaTamSapienza avatar Feb 19 '24 22:02 LucaTamSapienza

@mvafin I apologize for the delayed response. I bought a new PC (Mbp M2 Pro) and was setting it up to work with OpenVINO. Coming from Linux, I am facing some difficulties. Returning to our previous conversation, I checked the logs and I noticed differences from my test results when running the command (py.test <path_to_test>). I don't quite understand what could be causing this. Running the command you provided

>>>import openvino
>>>openvino.__file__

I get the following: /Users/lucatam/Library/Python/3.9/lib/python/site-packages/openvino/init.py. I'm sorry, but at the moment, I am quite confused as it makes me think that all this time I was working with a non-functional environment. Could you provide some clarification?

It seems like you are working with openvino installed from wheel, I assume it is a release version. It would make sense to first uninstall it using: pip uninstall openvino and then build the project again and point PYTHONPATH to newly built openvino.

mvafin avatar Feb 20 '24 13:02 mvafin

Ok, I uninstalled OpenVINO and rebuilt the project with the following using:

cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_PYTHON=ON -DENABLE_TESTS=ON -DENABLE_FUNCTIONAL_TESTS=ON DENABLE_DEBUG_CAPS=ON -DENABLE_CPU_DEBUG_CAPS=ON ..
cmake --build . --parallel 

I did this process for my pc with ubuntu 20.04 and the the one with Mac(arm64). With my Mac I'm facing a lot of issues so I think I'll keep working with the other one. I'll try to run the test another time to see if I have the same output as the logs. p.s. you use ubuntu 20.04 or macOS?

LucaTamSapienza avatar Feb 20 '24 22:02 LucaTamSapienza

Ok, I uninstalled OpenVINO and rebuilt the project with the following using:

cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_PYTHON=ON -DENABLE_TESTS=ON -DENABLE_FUNCTIONAL_TESTS=ON DENABLE_DEBUG_CAPS=ON -DENABLE_CPU_DEBUG_CAPS=ON ..
cmake --build . --parallel 

I did this process for my pc with ubuntu 20.04 and the the one with Mac(arm64). With my Mac I'm facing a lot of issues so I think I'll keep working with the other one. I'll try to run the test another time to see if I have the same output as the logs. p.s. you use ubuntu 20.04 or macOS?

I personally use Ubuntu 22.04, but we also support MacOS, we have tests on it.

mvafin avatar Feb 21 '24 10:02 mvafin

I personally use Ubuntu 22.04, but we also support MacOS, we have tests on it.

I'm currently working with ubuntu 20.04 and macOS. I still encounter the same error that i can't test my operation, i don't know why but always show that every tests fail. I recompiled OpenVINO with TESTS && FUNCIONAL_TESTS ON, but it still shows the issues I mentioned above. Currently, I am on Ubuntu 20.04. I hope this latest commit resolves the tests that fail for the out parameter.

LucaTamSapienza avatar Feb 22 '24 19:02 LucaTamSapienza

I think I've solved the error. I was saving the results of the expm1 operation inside y, where y was an arbitrary type that varied depending on the _prepare_input function call. Instead, by explicitly casting to float32, it should resolve the issue.

LucaTamSapienza avatar Feb 22 '24 22:02 LucaTamSapienza

Please also add support for aten::expm1_ since it is the same op, just inplace version.

Something like this should work?

if (context.get_op_type() == "aten::expm1_") {
        context.mutate_input(0, expm1);
    } else if (!context.input_is_none(1)) {
        context.mutate_input(1, expm1);
    }

LucaTamSapienza avatar Feb 23 '24 12:02 LucaTamSapienza

Please also add support for aten::expm1_ since it is the same op, just inplace version.

Something like this should work?

if (context.get_op_type() == "aten::expm1_") {
        context.mutate_input(0, expm1);
    } else if (!context.input_is_none(1)) {
        context.mutate_input(1, expm1);
    }

No, you should be able to just use inplace_op decorator in op_table.cpp

mvafin avatar Feb 23 '24 12:02 mvafin

Hi @mvafin, running tests locally, I encounter two main issues. Some tests fail due to too much variation compared to the torch.expm1 operation.

E           AssertionError: Accuracy validation failed

../tests/layer_tests/pytorch_tests/pytorch_layer_test_class.py:200: AssertionError
----------------------------------------------------- Captured stdout call ------------------------------------------------------
graph(%self : __torch__.test_expm1.___torch_mangle_1.aten_expm1,
      %x.1 : Double(6, strides=[1], requires_grad=0, device=cpu)):
  %2 : int = prim::Constant[value=7]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %3 : bool = prim::Constant[value=0]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %4 : bool = prim::Constant[value=0]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %5 : NoneType = prim::Constant()
  %x : Double(6, strides=[1], requires_grad=0, device=cpu) = aten::to(%x.1, %2, %3, %4, %5) # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %7 : Double(6, strides=[1], requires_grad=0, device=cpu) = aten::expm1(%x) # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %8 : Device = prim::Constant[value="cpu"]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %9 : int = prim::Constant[value=6]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %10 : bool = prim::Constant[value=0]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %11 : bool = prim::Constant[value=0]() # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  %12 : NoneType = prim::Constant()
  %13 : Float(6, strides=[1], requires_grad=0, device=cpu) = aten::to(%7, %8, %9, %10, %11, %12) # /Users/lucatam/Documents/OpenSourceProject/openvino/tests/layer_tests/pytorch_tests/test_expm1.py:37:0
  return (%13)

Max diff is 0.0381622314453125

While other tests using the GPU fail entirely, but I'm sure this is a configuration problem on my end (not having an Intel processor).

E       Device with "GPU" name is not registered in the OpenVINO Runtime

I'm more concerned about the Accuracy validation error that only some tests reports.

../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] FAILED                                           [  1%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] FAILED                                           [  2%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] FAILED                                             [  3%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] FAILED                                             [  4%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] FAILED                                        [  5%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] FAILED                                        [  6%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] FAILED                                          [  7%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] FAILED                                          [  8%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] FAILED                                         [  9%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] FAILED                                         [ 10%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] FAILED                                           [ 11%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] FAILED                                           [ 12%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] FAILED                                      [ 13%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] FAILED                                      [ 14%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] FAILED                                        [ 15%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] FAILED                                        [ 16%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] FAILED                                           [ 17%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] FAILED                                           [ 18%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] FAILED                                             [ 19%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] FAILED                                             [ 20%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] FAILED                                        [ 21%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] FAILED                                        [ 22%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] FAILED                                          [ 23%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] FAILED                                          [ 25%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] PASSED                                           [ 26%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] PASSED                                           [ 27%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] PASSED                                             [ 28%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] PASSED                                             [ 29%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] PASSED                                        [ 30%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] PASSED                                        [ 31%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] PASSED                                          [ 32%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] PASSED                                          [ 33%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] PASSED                                         [ 34%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] PASSED                                         [ 35%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] PASSED                                           [ 36%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] PASSED                                           [ 37%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] PASSED                                      [ 38%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] PASSED                                      [ 39%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] PASSED                                        [ 40%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] PASSED                                        [ 41%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] PASSED                                           [ 42%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] PASSED                                           [ 43%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] PASSED                                             [ 44%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] PASSED                                             [ 45%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] PASSED                                        [ 46%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] PASSED                                        [ 47%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] PASSED                                          [ 48%]
../tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:CPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] PASSED                                          [ 50%]

I'm only reporting the tests where ie_device=CPU since GPU fails. As you can see only when precision is FP16 pass, but i have a loss of precision because when it's increased to FP32 all tests fail. Maybe i should not cast the output to float32? but even if it was some tests should pass and should fails only where the input type is FP64. Could you take a look and tell me where to look?

LucaTamSapienza avatar Feb 24 '24 21:02 LucaTamSapienza

Running the same tests with my other pc (intel i5, ubuntu 20.04) solved my original problem. Now every tests that use CPU device pass, but i still have some problem with GPU one.

tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] FAILED                                   [ 51%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] FAILED                                   [ 52%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] FAILED                                     [ 53%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] FAILED                                     [ 54%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] FAILED                                [ 55%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] FAILED                                [ 56%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] FAILED                                  [ 57%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] FAILED                                  [ 58%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] FAILED                                 [ 59%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] FAILED                                 [ 60%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] FAILED                                   [ 61%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] FAILED                                   [ 62%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] FAILED                              [ 63%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] FAILED                              [ 64%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] FAILED                                [ 65%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] FAILED                                [ 66%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] FAILED                                   [ 67%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] FAILED                                   [ 68%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] FAILED                                     [ 69%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] FAILED                                     [ 70%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] FAILED                                [ 71%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] FAILED                                [ 72%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] FAILED                                  [ 73%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] FAILED                                  [ 75%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] PASSED                                   [ 76%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] FAILED                                   [ 77%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] PASSED                                     [ 78%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] PASSED                                     [ 79%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] FAILED                                [ 80%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] FAILED                                [ 81%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] FAILED                                  [ 82%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] FAILED                                  [ 83%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] PASSED                                 [ 84%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] FAILED                                 [ 85%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] PASSED                                   [ 86%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] PASSED                                   [ 87%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] FAILED                              [ 88%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] FAILED                              [ 89%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] FAILED                                [ 90%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] FAILED                                [ 91%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] PASSED                                   [ 92%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] FAILED                                   [ 93%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] PASSED                                     [ 94%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] PASSED                                     [ 95%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] FAILED                                [ 96%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] FAILED                                [ 97%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] FAILED                                  [ 98%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] FAILED                                  [100%]

The failing one have two different errors: some have Accuracy validation error, other have the following:

E       RuntimeError: Exception from src/inference/src/cpp/infer_request.cpp:223:
E       Check 'tensor' failed at src/inference/src/dev/isync_infer_request.cpp:257

LucaTamSapienza avatar Feb 25 '24 23:02 LucaTamSapienza

Running the same tests with my other pc (intel i5, ubuntu 20.04) solved my original problem. Now every tests that use CPU device pass, but i still have some problem with GPU one.

tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] FAILED                                   [ 51%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] FAILED                                   [ 52%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] FAILED                                     [ 53%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] FAILED                                     [ 54%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] FAILED                                [ 55%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] FAILED                                [ 56%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] FAILED                                  [ 57%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] FAILED                                  [ 58%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] FAILED                                 [ 59%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] FAILED                                 [ 60%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] FAILED                                   [ 61%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] FAILED                                   [ 62%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] FAILED                              [ 63%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] FAILED                              [ 64%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] FAILED                                [ 65%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] FAILED                                [ 66%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] FAILED                                   [ 67%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] FAILED                                   [ 68%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] FAILED                                     [ 69%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] FAILED                                     [ 70%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] FAILED                                [ 71%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] FAILED                                [ 72%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] FAILED                                  [ 73%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP32 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] FAILED                                  [ 75%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float32 ] PASSED                                   [ 76%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:float64 ] FAILED                                   [ 77%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int32 ] PASSED                                     [ 78%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode: - dtype:int64 ] PASSED                                     [ 79%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float32 ] FAILED                                [ 80%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:float64 ] FAILED                                [ 81%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int32 ] FAILED                                  [ 82%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[0, 1, 2, 3, 4, 5] - mode:out - dtype:int64 ] FAILED                                  [ 83%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float32 ] PASSED                                 [ 84%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:float64 ] FAILED                                 [ 85%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int32 ] PASSED                                   [ 86%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode: - dtype:int64 ] PASSED                                   [ 87%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float32 ] FAILED                              [ 88%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:float64 ] FAILED                              [ 89%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int32 ] FAILED                                [ 90%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[-2, -1, 0, 1, 2, 3] - mode:out - dtype:int64 ] FAILED                                [ 91%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float32 ] PASSED                                   [ 92%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:float64 ] FAILED                                   [ 93%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int32 ] PASSED                                     [ 94%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode: - dtype:int64 ] PASSED                                     [ 95%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float32 ] FAILED                                [ 96%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:float64 ] FAILED                                [ 97%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int32 ] FAILED                                  [ 98%]
tests/layer_tests/pytorch_tests/test_expm1.py::TestExpm1::test_expm1[ ie_device:GPU - precision:FP16 - inputs:[1, 2, 3, 4, 5, 6] - mode:out - dtype:int64 ] FAILED                                  [100%]

The failing one have two different errors: some have Accuracy validation error, other have the following:

E       RuntimeError: Exception from src/inference/src/cpp/infer_request.cpp:223:
E       Check 'tensor' failed at src/inference/src/dev/isync_infer_request.cpp:257

Please test only CPU and FP32. Other cases are not related to conversion testing.

mvafin avatar Feb 26 '24 14:02 mvafin

Please test only CPU and FP32. Other cases are not related to conversion testing.

Ok @mvafin , all CPU tests pass succesfully for FP 16, 32.

LucaTamSapienza avatar Feb 26 '24 18:02 LucaTamSapienza

build_jenkins

mvafin avatar Feb 27 '24 13:02 mvafin