Skip to content

Conversation

@Lunderberg
Copy link
Contributor

This commit allows the relay test suite to be run targeting Vulkan with TVM_TEST_TARGETS="vulkan -from_device=0" pytest tests/python/relay. All tests that require a specific environment are skipped if that environment isn't present. All tests that are known to fail when running on Vulkan are marked as expected failure, and will be tracked in #8903.

This matches the usage in `tvm.testing.parameter`, and allows for
parameter sets to be referred to by a single name.
…known_failing_targets

If an explicit list of targets is given, then the
`known_failing_targets` decorator would fail to apply.  This commit
resolves the issue, and cleans up all target-specific marks to apply
in `tvm.testing.plugin._add_target_specific_marks`.
@Lunderberg Lunderberg force-pushed the unittest_vulkan_relay branch 2 times, most recently from 7e97da3 to 7cb0d0e Compare September 7, 2021 16:17
This commit allows the relay test suite to be run targeting Vulkan with
`TVM_TEST_TARGETS="vulkan -from_device=0" pytest tests/python/relay`.  All
tests that require a specific environment are skipped if that environment
isn't present.  All tests that are known to fail when running on Vulkan
are marked as expected failure, and will be tracked in
apache#8903.

- Failures during code generation
  - Type mismatches, boolean vs int8
    - tests/python/relay/test_any.py::test_any_reduce
    - tests/python/relay/test_op_level3.py::test_sparse_reshape
    - tests/python/relay/test_op_level4.py::test_reduce_functions
    - tests/python/relay/test_vm.py::test_cond
    - tests/python/relay/test_vm.py::test_simple_if

  - Incorrect strategy selection, picks NCHWc implemenation for NHWC layout
    - tests/python/relay/test_op_level2.py::test_conv2d_run

  - Unresolved CallNode operation
    - tests/python/relay/test_op_level1.py::test_unary_op[erf/tan/atan]
    - tests/python/relay/test_op_level3.py::test_scatter_add
    - tests/python/relay/test_op_level3.py::test_segment_sum

  - Generates 64-bit calls to GLSL that have only 16-/32-bit support
    - tests/python/relay/test_op_grad_level1.py::test_log_softmax_grad
    - tests/python/relay/test_op_grad_level1.py::test_softmax_grad
    - tests/python/relay/test_op_grad_level1.py::test_unary_op
    - tests/python/relay/test_op_grad_level10.py::test_cross_entropy_grad

  - Codegen raises error for variable size
    - tests/python/relay/test_any.py::test_any_batch_matmul
    - tests/python/relay/test_any.py::test_any_conv2d_NCHWc
    - tests/python/relay/test_any.py::test_any_dense

- Failures when running
  - Numeric differences (observed on GTX 1650 with NVIDIA driver)
    - tests/python/relay/test_op_level3.py::test_take
    - tests/python/relay/test_op_level5.py::TestCropAndResize
    - tests/python/relay/test_op_level5.py::TestResize1D
    - tests/python/relay/test_op_level5.py::TestResize2D
@Lunderberg Lunderberg force-pushed the unittest_vulkan_relay branch from 7cb0d0e to 5c938ce Compare September 7, 2021 16:19
@masahi masahi merged commit 6dea994 into apache:main Sep 7, 2021
@Lunderberg Lunderberg deleted the unittest_vulkan_relay branch September 8, 2021 03:20
Lunderberg added a commit to Lunderberg/tvm that referenced this pull request Sep 13, 2021
test_op_level2.py::test_conv2d should have been removed in the
refactoring in apache#8947.  All functionality tested by it is in
test_op_level2.py::TestConv2D.
Lunderberg added a commit to Lunderberg/tvm that referenced this pull request Sep 13, 2021
test_op_level2.py::test_conv2d and test_any.py::test_any_reduce should
have been removed in the refactoring in apache#8947.  All functionality
tested by it is in test_op_level2.py::TestConv2D and
test_any::TestAnyReduce.
masahi pushed a commit that referenced this pull request Sep 13, 2021
test_op_level2.py::test_conv2d and test_any.py::test_any_reduce should
have been removed in the refactoring in #8947.  All functionality
tested by it is in test_op_level2.py::TestConv2D and
test_any::TestAnyReduce.
ylc pushed a commit to ylc/tvm that referenced this pull request Sep 29, 2021
test_op_level2.py::test_conv2d and test_any.py::test_any_reduce should
have been removed in the refactoring in apache#8947.  All functionality
tested by it is in test_op_level2.py::TestConv2D and
test_any::TestAnyReduce.
ylc pushed a commit to ylc/tvm that referenced this pull request Jan 13, 2022
test_op_level2.py::test_conv2d and test_any.py::test_any_reduce should
have been removed in the refactoring in apache#8947.  All functionality
tested by it is in test_op_level2.py::TestConv2D and
test_any::TestAnyReduce.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants