Skip to content

Commit

Permalink
[CI] Enable integration tests on AArch64
Browse files Browse the repository at this point in the history
As part of this any failing tests have been marked for follow up as part of apache#10673.

This depends on fixes in apache#10659, apache#10672 and apache#10674 to scope other tests correctly.
  • Loading branch information
Mousius committed Mar 25, 2022
1 parent 532b2b4 commit 3502533
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 4 deletions.
7 changes: 5 additions & 2 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -720,7 +720,7 @@ stage('Test') {
Utils.markStageSkippedForConditional('python3: i386')
}
},
'python3: arm': {
'python3: aarch64': {
if (!skip_ci && is_docs_only_build != 1) {
node('ARM') {
ws(per_exec_ws('tvm/ut-python-arm')) {
Expand All @@ -739,7 +739,10 @@ stage('Test') {
script: "${docker_run} ${ci_arm} ./tests/scripts/task_python_topi.sh",
label: 'Run TOPI tests',
)
// sh "${docker_run} ${ci_arm} ./tests/scripts/task_python_integration.sh"
sh (
script: "${docker_run} ${ci_arm} ./tests/scripts/task_python_integration.sh",
label: 'Run CPU integration tests',
)
}
} finally {
junit 'build/pytest-results/*.xml'
Expand Down
13 changes: 13 additions & 0 deletions tests/python/driver/tvmc/test_autoscheduler.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import platform
import pytest
import os

Expand Down Expand Up @@ -70,13 +71,21 @@ def test_get_tuning_tasks(keras_simple):
assert all([type(x) is expected_task_type for x in tasks]) is True


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_tune_tasks(keras_simple, tmpdir_factory):
pytest.importorskip("tensorflow")

tmpdir_name = tmpdir_factory.mktemp("data")
_autoscheduler_test_helper(keras_simple, tmpdir_name)


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_tune_tasks__tuning_records(keras_simple, tmpdir_factory):
pytest.importorskip("tensorflow")

Expand All @@ -87,6 +96,10 @@ def test_tune_tasks__tuning_records(keras_simple, tmpdir_factory):
_autoscheduler_test_helper(keras_simple, tmpdir_name, prior_records=output_log_phase_1)


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_tune_tasks__no_early_stopping(keras_simple, tmpdir_factory):
pytest.importorskip("tensorflow")

Expand Down
5 changes: 5 additions & 0 deletions tests/python/driver/tvmc/test_command_line.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,17 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import platform
import pytest
import os

from tvm.driver.tvmc.main import _main


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_tvmc_cl_workflow(keras_simple, tmpdir_factory):
pytest.importorskip("tensorflow")

Expand Down
5 changes: 5 additions & 0 deletions tests/python/driver/tvmc/test_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import platform
import pytest
import os

Expand All @@ -24,6 +25,10 @@
from tvm.runtime.module import BenchmarkResult


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_tvmc_workflow(keras_simple):
pytest.importorskip("tensorflow")

Expand Down
7 changes: 5 additions & 2 deletions tests/python/relay/aot/test_crt_aot.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,12 @@
# under the License.

from collections import OrderedDict
from distutils import file_util
import platform
import re
import sys
import os
import tarfile
import pathlib
import re

import numpy as np
import pytest
Expand Down Expand Up @@ -820,6 +819,10 @@ def test_constants_alignment(constants_byte_alignment):
assert f'__attribute__((section(".rodata.tvm"), aligned({constants_byte_alignment})))' in source


@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_output_tensor_names():
"""Test that the output names generated match those in the model"""
pytest.importorskip("tflite")
Expand Down
5 changes: 5 additions & 0 deletions tests/python/relay/test_op_level5.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
""" Support level5 operator test cases.
"""
import math
import platform
import sys

import numpy as np
Expand Down Expand Up @@ -220,6 +221,10 @@ class TestCropAndResize:
interpolate_method = tvm.testing.parameter("bilinear", "nearest_neighbor")
layout = tvm.testing.parameter("NHWC", "NCHW")

@pytest.mark.skipif(
platform.machine() == "aarch64",
reason="Currently failing on AArch64 - see https://github.com/apache/tvm/issues/10673",
)
def test_crop_and_resize(self, target, dev, executor_kind, layout, interpolate_method):
target_kind = tvm.target.Target(target).kind.name
if (
Expand Down

0 comments on commit 3502533

Please sign in to comment.