[nGraph][ONNX] WA for currently unsupported precisions (#3964)
This commit is contained in:
1 parent
aa775cc0a1
commit
647104f602
5 files changed
+37
-44
No files matched your search
@@ -88,14 +88,8 @@ xfail_issue_35923 = xfail_test(reason="RuntimeError: PReLU without weights is no
|
||||
xfail_issue_35924 = xfail_test(reason="Assertion error - elu results mismatch")
|
||||
xfail_issue_35925 = xfail_test(reason="Assertion error - reduction ops results mismatch")
|
||||
xfail_issue_35927 = xfail_test(reason="RuntimeError: B has zero dimension that is not allowable")
|
||||
xfail_issue_40319 = xfail_test(reason="RuntimeError: [NOT_IMPLEMENTED] Input image format FP64 is not "
|
||||
"supported yet...")
|
||||
xfail_issue_35930 = xfail_test(reason="onnx.onnx_cpp2py_export.checker.ValidationError: "
|
||||
"Required attribute 'to' is missing.")
|
||||
xfail_issue_36476 = xfail_test(reason="RuntimeError: [NOT_IMPLEMENTED] Input image format U32 is "
|
||||
"not supported yet...")
|
||||
xfail_issue_36478 = xfail_test(reason="RuntimeError: [NOT_IMPLEMENTED] Input image format U64 is "
|
||||
"not supported yet...")
|
||||
xfail_issue_36480 = xfail_test(reason="RuntimeError: [NOT_FOUND] Unsupported property dummy_option "
|
||||
"by CPU plugin")
|
||||
xfail_issue_36485 = xfail_test(reason="RuntimeError: Check 'm_group >= 1' failed at "
|
||||
@@ -184,6 +178,12 @@ xfail_issue_44976 = xfail_test(reason="E RuntimeError: Quantize layer with nam
|
||||
"FakeQuantize_xxx has non const input on 1 port")
|
||||
xfail_issue_46762 = xfail_test(reason="Incorrect result of Minimum op if u16 data type is used")
|
||||
xfail_issue_46765 = xfail_test(reason="select_last_index attribute is not supported by ArgMin and ArgMax")
|
||||
xfail_issue_47317 = xfail_test(reason="RuntimeError: While validating ONNX node '<Node(Add): 2>': "
|
||||
"Check shape_size(axes_shape) == input_rank' failed")
|
||||
xfail_issue_47323 = xfail_test(reason="RuntimeError: The plugin does not support FP64")
|
||||
xfail_issue_47330 = xfail_test(reason="RuntimeError: Eltwise node with name `[name]` doesn't support "
|
||||
"FP64 precision.")
|
||||
xfail_issue_47337 = xfail_test(reason="RuntimeError: Unsupported dynamic ops: v1::OneHot")
|
||||
|
||||
# Model MSFT issues:
|
||||
xfail_issue_37957 = xfail_test(reason="RuntimeError: nGraph does not support the following ONNX operations:"
|
||||
@@ -208,7 +208,6 @@ xfail_issue_39661 = xfail_test(reason="RuntimeError: NonMaxSuppression operation
|
||||
"NonMaxSuppressionIE operation.")
|
||||
xfail_issue_39662 = xfail_test(reason="RuntimeError: 'ScatterElementsUpdate' layer with name 'y' have "
|
||||
"indices value that points to non-existing output tensor element")
|
||||
xfail_issue_41894 = xfail_test(reason="CPU plugin elementwise computation missmatch")
|
||||
|
||||
|
||||
xfail_issue_39704 = xfail_test(reason="ResNet101_DUC_HDC - AssertionError: zoo models results mismatch")
|
||||
|
||||
@@ -39,10 +39,19 @@ def get_runtime():
|
||||
return runtime(backend_name=tests.BACKEND_NAME)
|
||||
|
||||
|
||||
def convert_i64_to_i32(cnn_network: IENetwork) -> None:
|
||||
def _convert_inputs(cnn_network: IENetwork) -> None:
|
||||
"""WA converts unsupported input images formats."""
|
||||
precision_map = {
|
||||
"FP64": "FP32",
|
||||
"U32": "I32",
|
||||
}
|
||||
|
||||
for cnn_input in cnn_network.input_info:
|
||||
if cnn_network.input_info[cnn_input].precision == "I64":
|
||||
cnn_network.input_info[cnn_input].precision = "I32"
|
||||
try:
|
||||
_precision = precision_map[cnn_network.input_info[cnn_input].precision]
|
||||
cnn_network.input_info[cnn_input].precision = _precision
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
|
||||
class Runtime(object):
|
||||
@@ -105,8 +114,8 @@ class Computation(object):
|
||||
cnn_network = IENetwork(capsule)
|
||||
if self.function.is_dynamic():
|
||||
cnn_network.reshape(dict(zip(param_names, input_shapes)))
|
||||
# Convert inputs of the network from I64 to I32
|
||||
convert_i64_to_i32(cnn_network)
|
||||
# Convert unsupported inputs of the network
|
||||
_convert_inputs(cnn_network)
|
||||
self.network_cache[str(input_shapes)] = cnn_network
|
||||
else:
|
||||
cnn_network = self.network_cache[str(input_shapes)]
|
||||
|
||||
@@ -26,9 +26,7 @@ from ngraph.impl import Function, PartialShape, Shape, Type
|
||||
from ngraph.impl.op import Parameter
|
||||
from tests.runtime import get_runtime
|
||||
from tests.test_ngraph.util import run_op_node
|
||||
from tests import (xfail_issue_36476,
|
||||
xfail_issue_36480,
|
||||
xfail_issue_40319)
|
||||
from tests import (xfail_issue_36480)
|
||||
|
||||
|
||||
def test_ngraph_function_api():
|
||||
@@ -59,14 +57,14 @@ def test_ngraph_function_api():
|
||||
"dtype",
|
||||
[
|
||||
np.float32,
|
||||
pytest.param(np.float64, marks=xfail_issue_40319),
|
||||
np.float64,
|
||||
np.int8,
|
||||
np.int16,
|
||||
np.int32,
|
||||
np.int64,
|
||||
np.uint8,
|
||||
np.uint16,
|
||||
pytest.param(np.uint32, marks=xfail_issue_36476),
|
||||
np.uint32,
|
||||
np.uint64,
|
||||
],
|
||||
)
|
||||
|
||||
@@ -18,7 +18,7 @@ import numpy as np
|
||||
import ngraph as ng
|
||||
from tests.runtime import get_runtime
|
||||
from tests.test_ngraph.util import run_op_node
|
||||
from tests import (xfail_issue_36478,
|
||||
from tests import (xfail_issue_47337,
|
||||
xfail_issue_44848)
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ def test_onehot():
|
||||
assert np.allclose(result, expected)
|
||||
|
||||
|
||||
@xfail_issue_36478
|
||||
@xfail_issue_47337
|
||||
def test_one_hot():
|
||||
data = np.array([0, 1, 2], dtype=np.int32)
|
||||
depth = 2
|
||||
|
||||
@@ -39,8 +39,6 @@ from tests import (BACKEND_NAME,
|
||||
xfail_issue_40957,
|
||||
xfail_issue_35915,
|
||||
xfail_issue_34310,
|
||||
xfail_issue_36476,
|
||||
xfail_issue_36478,
|
||||
xfail_issue_38091,
|
||||
xfail_issue_38699,
|
||||
xfail_issue_33596,
|
||||
@@ -73,8 +71,6 @@ from tests import (BACKEND_NAME,
|
||||
xfail_issue_38732,
|
||||
xfail_issue_38734,
|
||||
xfail_issue_38735,
|
||||
xfail_issue_40319,
|
||||
xfail_issue_41894,
|
||||
xfail_issue_45177,
|
||||
xfail_issue_45180,
|
||||
xfail_issue_43742,
|
||||
@@ -91,7 +87,10 @@ from tests import (BACKEND_NAME,
|
||||
xfail_issue_44968,
|
||||
xfail_issue_44976,
|
||||
xfail_issue_46762,
|
||||
xfail_issue_46765)
|
||||
xfail_issue_46765,
|
||||
xfail_issue_47317,
|
||||
xfail_issue_47323,
|
||||
xfail_issue_47330)
|
||||
|
||||
|
||||
def expect_fail(test_case_path, xfail): # type: (str) -> None
|
||||
@@ -218,15 +217,13 @@ tests_expected_to_fail = [
|
||||
"OnnxBackendNodeModelTest.test_lstm_defaults_cpu",
|
||||
"OnnxBackendNodeModelTest.test_lstm_with_initial_bias_cpu",
|
||||
"OnnxBackendNodeModelTest.test_lstm_with_peepholes_cpu"),
|
||||
(xfail_issue_36476,
|
||||
(xfail_issue_46762,
|
||||
"OnnxBackendNodeModelTest.test_max_uint16_cpu",
|
||||
"OnnxBackendNodeModelTest.test_min_uint16_cpu",
|
||||
"OnnxBackendNodeModelTest.test_max_uint32_cpu",
|
||||
"OnnxBackendNodeModelTest.test_min_uint32_cpu",
|
||||
"OnnxBackendNodeModelTest.test_pow_types_float32_uint32_cpu"),
|
||||
(xfail_issue_36478,
|
||||
"OnnxBackendNodeModelTest.test_max_uint64_cpu",
|
||||
"OnnxBackendNodeModelTest.test_min_uint64_cpu"),
|
||||
(xfail_issue_46762,
|
||||
"OnnxBackendNodeModelTest.test_min_uint16_cpu"),
|
||||
(xfail_issue_46765,
|
||||
"OnnxBackendNodeModelTest.test_argmax_negative_axis_keepdims_example_select_last_index_cpu",
|
||||
"OnnxBackendNodeModelTest.test_argmax_keepdims_example_select_last_index_cpu",
|
||||
@@ -248,23 +245,15 @@ tests_expected_to_fail = [
|
||||
"OnnxBackendNodeModelTest.test_gather_negative_indices_cpu",
|
||||
"OnnxBackendNodeModelTest.test_mvn_cpu",
|
||||
"OnnxBackendNodeModelTest.test_elu_example_cpu",),
|
||||
(xfail_issue_40319,
|
||||
(xfail_issue_47317,
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_size1_broadcast_cpu",
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_size1_singleton_broadcast_cpu",
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_size1_singleton_broadcast_cpu",),
|
||||
(xfail_issue_47323,
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_broadcast_cpu",
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_addconstant_cpu",
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_size1_right_broadcast_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cast_DOUBLE_to_FLOAT_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cast_DOUBLE_to_FLOAT16_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_1d_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_1d_reverse_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_1d_exclusive_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_1d_reverse_exclusive_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_2d_axis_0_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_2d_negative_axis_cpu",
|
||||
"OnnxBackendNodeModelTest.test_cumsum_2d_axis_1_cpu",
|
||||
"OnnxBackendPyTorchOperatorModelTest.test_operator_add_size1_right_broadcast_cpu",),
|
||||
(xfail_issue_47330,
|
||||
"OnnxBackendNodeModelTest.test_mod_mixed_sign_float64_cpu",
|
||||
"OnnxBackendNodeModelTest.test_max_float64_cpu",
|
||||
"OnnxBackendNodeModelTest.test_min_float64_cpu"),
|
||||
(xfail_issue_38699,
|
||||
"OnnxBackendSimpleModelTest.test_gradient_of_add_and_mul_cpu",
|
||||
@@ -640,8 +629,6 @@ tests_expected_to_fail = [
|
||||
(xfail_issue_38735,
|
||||
"OnnxBackendNodeModelTest.test_adagrad_multiple_cpu",
|
||||
"OnnxBackendNodeModelTest.test_adagrad_cpu"),
|
||||
(xfail_issue_41894,
|
||||
"OnnxBackendNodeModelTest.test_max_uint16_cpu"),
|
||||
(xfail_issue_45177,
|
||||
"OnnxBackendNodeModelTest.test_reduce_sum_default_axes_keepdims_example_cpu",
|
||||
"OnnxBackendNodeModelTest.test_reduce_sum_default_axes_keepdims_random_cpu",
|
||||
|
||||
Reference in new issue
Block a user