From dfa2dd80242317673e49142700d525987ab77df6 Mon Sep 17 00:00:00 2001 From: Andrew Reusch Date: Mon, 2 Aug 2021 15:33:05 -0700 Subject: [PATCH] fix unbound local and only run --parallel for build and CPU integration --- tests/scripts/setup-pytest-env.sh | 2 +- tests/scripts/task_python_frontend.sh | 14 ++++++------- tests/scripts/task_python_frontend_cpu.sh | 6 +++--- tests/scripts/task_python_integration.sh | 21 +++++++++++-------- .../task_python_integration_gpuonly.sh | 1 + tests/scripts/task_python_topi.sh | 2 +- 6 files changed, 25 insertions(+), 21 deletions(-) diff --git a/tests/scripts/setup-pytest-env.sh b/tests/scripts/setup-pytest-env.sh index 05522f1b6fd98..c5c9f059dc3a9 100755 --- a/tests/scripts/setup-pytest-env.sh +++ b/tests/scripts/setup-pytest-env.sh @@ -56,7 +56,7 @@ fi function run_pytest() { local extra_args=( ) if [ "$1" == "--parallel" ]; then - extra_args=( "${extra_args[@]}" -n "${PYTEST_NUM_CPUS}" ) + extra_args=( -n "${PYTEST_NUM_CPUS}" ) shift fi local ffi_type="$1" diff --git a/tests/scripts/task_python_frontend.sh b/tests/scripts/task_python_frontend.sh index 035942c768f6d..fb388a6b7edda 100755 --- a/tests/scripts/task_python_frontend.sh +++ b/tests/scripts/task_python_frontend.sh @@ -32,25 +32,25 @@ find . -type f -path "*.pyc" | xargs rm -f make cython3 echo "Running relay MXNet frontend test..." -run_pytest --parallel cython python-frontend-mxnet tests/python/frontend/mxnet +run_pytest cython python-frontend-mxnet tests/python/frontend/mxnet echo "Running relay ONNX frontend test..." # Enable tvm.testing decorators in the ONNX importer test (not enabling in the other tests because we # they do not consistently use the decorators to indicate that tests should run on GPU) # In the future, we should enable tvm.testing decorators for all the test files. -PYTEST_ADDOPTS="-m gpu $PYTEST_ADDOPTS" run_pytest --parallel cython python-frontend-onnx tests/python/frontend/onnx +PYTEST_ADDOPTS="-m gpu $PYTEST_ADDOPTS" run_pytest cython python-frontend-onnx tests/python/frontend/onnx echo "Running relay CoreML frontend test..." -run_pytest --parallel cython python-frontend-coreml tests/python/frontend/coreml +run_pytest cython python-frontend-coreml tests/python/frontend/coreml echo "Running relay Tensorflow frontend test..." -run_pytest --parallel cython python-frontend-tensorflow tests/python/frontend/tensorflow +run_pytest cython python-frontend-tensorflow tests/python/frontend/tensorflow echo "Running relay caffe2 frontend test..." -run_pytest --parallel cython python-frontend-caffe2 tests/python/frontend/caffe2 +run_pytest cython python-frontend-caffe2 tests/python/frontend/caffe2 echo "Running relay DarkNet frontend test..." -run_pytest --parallel cython python-frontend-darknet tests/python/frontend/darknet +run_pytest cython python-frontend-darknet tests/python/frontend/darknet echo "Running relay PyTorch frontend test..." -run_pytest --parallel cython python-frontend-pytorch tests/python/frontend/pytorch +run_pytest cython python-frontend-pytorch tests/python/frontend/pytorch diff --git a/tests/scripts/task_python_frontend_cpu.sh b/tests/scripts/task_python_frontend_cpu.sh index 542a98d90c30f..208714c64988f 100755 --- a/tests/scripts/task_python_frontend_cpu.sh +++ b/tests/scripts/task_python_frontend_cpu.sh @@ -33,10 +33,10 @@ find . -type f -path "*.pyc" | xargs rm -f make cython3 echo "Running relay TFLite frontend test..." -run_pytest --parallel cython python-frontend-tflite tests/python/frontend/tflite +run_pytest cython python-frontend-tflite tests/python/frontend/tflite echo "Running relay Keras frontend test..." -run_pytest --parallel cython python-frontend-keras tests/python/frontend/keras +run_pytest cython python-frontend-keras tests/python/frontend/keras echo "Running relay Caffe frontend test..." -run_pytest --parallel cython python-frontend-caffe tests/python/frontend/caffe +run_pytest cython python-frontend-caffe tests/python/frontend/caffe diff --git a/tests/scripts/task_python_integration.sh b/tests/scripts/task_python_integration.sh index e525286aeaa07..ac50737d152f4 100755 --- a/tests/scripts/task_python_integration.sh +++ b/tests/scripts/task_python_integration.sh @@ -44,33 +44,36 @@ rm -rf lib make cd ../.. -run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-extensions apps/extension/tests -run_pytest --parallel cython ${TVM_INTEGRATION_TESTSUITE_NAME}-extensions apps/extension/tests +# Only run in parallel for CPU integration tests. +PYTEST_PARALLEL="${PYTEST_PARALLEL:---parallel}" + +run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-extensions apps/extension/tests +run_pytest "${PYTEST_PARALELL}" cython ${TVM_INTEGRATION_TESTSUITE_NAME}-extensions apps/extension/tests # Test dso plugin cd apps/dso_plugin_module rm -rf lib make cd ../.. -run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-dso_plugin_module apps/dso_plugin_module -run_pytest --parallel cython ${TVM_INTEGRATION_TESTSUITE_NAME}-dso_plugin_module apps/dso_plugin_module +run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-dso_plugin_module apps/dso_plugin_module +run_pytest "${PYTEST_PARALELL}" cython ${TVM_INTEGRATION_TESTSUITE_NAME}-dso_plugin_module apps/dso_plugin_module # Do not enable TensorFlow op # TVM_FFI=cython sh prepare_and_test_tfop_module.sh # TVM_FFI=ctypes sh prepare_and_test_tfop_module.sh -run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME} tests/python/integration +run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME} tests/python/integration if python -c "import tvm; from tvm.relay.op.contrib.ethosn import ethosn_available; print(ethosn_available().name)" -eq "SW_ONLY"; then - ETHOSN_VARIANT_CONFIG=ETHOSN78_1TOPS_4PLE_448KSRAM run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-contrib-test_ethosn tests/python/contrib/test_ethosn + ETHOSN_VARIANT_CONFIG=ETHOSN78_1TOPS_4PLE_448KSRAM run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-contrib-test_ethosn tests/python/contrib/test_ethosn fi -run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-contrib tests/python/contrib +run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-contrib tests/python/contrib # forked is needed because the global registry gets contaminated TVM_TEST_TARGETS="${TVM_RELAY_TEST_TARGETS:-llvm;cuda}" \ - run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-relay tests/python/relay + run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-relay tests/python/relay # Command line driver test -run_pytest --parallel ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-driver tests/python/driver +run_pytest "${PYTEST_PARALELL}" ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-driver tests/python/driver # Do not enable OpenGL # run_pytest ctypes ${TVM_INTEGRATION_TESTSUITE_NAME}-webgl tests/webgl diff --git a/tests/scripts/task_python_integration_gpuonly.sh b/tests/scripts/task_python_integration_gpuonly.sh index ac09cb5a14a38..0e2820454278c 100755 --- a/tests/scripts/task_python_integration_gpuonly.sh +++ b/tests/scripts/task_python_integration_gpuonly.sh @@ -20,5 +20,6 @@ export TVM_TEST_TARGETS="cuda;opencl;metal;rocm;vulkan;nvptx;opencl -device=mali export PYTEST_ADDOPTS="-m gpu $PYTEST_ADDOPTS" export TVM_RELAY_TEST_TARGETS="cuda" export TVM_INTEGRATION_TESTSUITE_NAME=python-integration-gpu +export TVM_GPU_INTEGRATION_TESTS=1 ./tests/scripts/task_python_integration.sh diff --git a/tests/scripts/task_python_topi.sh b/tests/scripts/task_python_topi.sh index a6983e1b763ef..9a5991e6a7664 100755 --- a/tests/scripts/task_python_topi.sh +++ b/tests/scripts/task_python_topi.sh @@ -31,4 +31,4 @@ make cython3 # cleanup pycache find . -type f -path "*.pyc" | xargs rm -f -run_pytest --parallel cython python-topi tests/python/topi/ +run_pytest cython python-topi tests/python/topi/