Skip to content

Commit 79e9f2d

Browse files
committed
Update testing for TEST_DEVICE
1 parent fa09c11 commit 79e9f2d

5 files changed

Lines changed: 24 additions & 24 deletions

File tree

.github/workflows/build-upload-wheels.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,10 +104,10 @@ jobs:
104104
python -c "import numba; assert numba.__version__ == '${{ matrix.numba-version }}'"
105105
106106
# Run host OpenMP tests.
107-
TEST_DEVICES=0 RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp
107+
RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp
108108
109109
# Run device (cpu target) OpenMP tests.
110-
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICES=1 RUN_TARGET=1 \
110+
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICE=host RUN_TARGET=1 \
111111
python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget
112112
113113
# Only on pre-release: Publish to TestPyPI for testing.

buildscripts/conda-recipes/pyomp/run_test.sh

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,20 +47,19 @@ fi
4747
# library is inited/de-inited.
4848

4949
echo "=> Run OpenMP CPU parallelism tests"
50-
echo "=> Running: TEST_DEVICES=0 RUN_TARGET=0 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp"
51-
# TODO: remove requiring the unused TEST_DEVICES.
52-
TEST_DEVICES=0 RUN_TARGET=0 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp 2>&1
50+
echo "=> Running: RUN_TARGET=0 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp"
51+
RUN_TARGET=0 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp 2>&1
5352

5453
echo "=> Run OpenMP offloading tests on CPU (device 1)"
55-
echo "=> Running: TEST_DEVICES=1 RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget"
56-
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICES=1 RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget 2>&1
54+
echo "=> Running: TEST_DEVICE=host RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget"
55+
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICE=host RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget 2>&1
5756
# Check if NVIDIA GPU is present.
5857
if command -v nvidia-smi >/dev/null 2>&1; then
5958
# `nvidia-smi --list-gpus` exits non-zero when no GPUs are present; run
6059
# it in a conditional so `set -e` does not cause the script to exit.
6160
if nvidia-smi --list-gpus >/dev/null 2>&1; then
6261
echo "=> Found NVIDIA GPU, Run OpenMP offloading tests on GPU (device 0)"
63-
echo "=> Running: TEST_DEVICES=0 RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget"
64-
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICES=0 RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget 2>&1
62+
echo "=> Running: TEST_DEVICE=gpu RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget"
63+
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICE=gpu RUN_TARGET=1 $SEGVCATCH python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget 2>&1
6564
fi
6665
fi

buildscripts/gitlab/build-and-test.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ git checkout ${CI_COMMIT_SHA}
4141
CC=clang CXX=clang++ python -m pip install -v .
4242

4343
# Run host OpenMP tests.
44-
TEST_DEVICES=0 RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp
44+
RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp
4545
# Run device (cpu target) OpenMP tests.
46-
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICES=1 RUN_TARGET=1 python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget
46+
OMP_TARGET_OFFLOAD=mandatory TEST_DEVICE=host RUN_TARGET=1 python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget
4747

4848
popd

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@ before-build = ["rm -rf build dist src/*.egg-info"]
4646
skip = ["*-musllinux_*", "cp38-*", "cp314t-*"]
4747
test-command = [
4848
# Run host OpenMP tests.
49-
"TEST_DEVICES=0 RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp",
49+
"RUN_TARGET=0 python -m numba.runtests -v -- numba.openmp.tests.test_openmp",
5050
# Run device (cpu target) OpenMP tests.
51-
"OMP_TARGET_OFFLOAD=mandatory TEST_DEVICES=1 RUN_TARGET=1 python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget",
51+
"OMP_TARGET_OFFLOAD=mandatory TEST_DEVICE=host RUN_TARGET=1 python -m numba.runtests -v -- numba.openmp.tests.test_openmp.TestOpenmpTarget",
5252
]
5353

5454
[tool.cibuildwheel.environment]

src/numba/openmp/tests/test_openmp.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3146,19 +3146,20 @@ class TestOpenmpTarget(TestOpenmpBase):
31463146
and uses OpenMP offloading info to find the device id for the target.
31473147
"""
31483148

3149-
devices = []
3150-
assert TestOpenmpBase.test_device, (
3151-
"Expected env var TEST_DEVICE to specify the test target device (e.g. 'host' or 'gpu')"
3152-
)
3149+
if TestOpenmpBase.run_target:
3150+
devices = []
3151+
assert TestOpenmpBase.test_device, (
3152+
"Expected env var TEST_DEVICE to specify the test target device (e.g. 'host' or 'gpu')"
3153+
)
31533154

3154-
devices = find_device_ids(type=TestOpenmpBase.test_device)
3155-
assert devices, (
3156-
f"Expected non-empty test devices list, no device with type {TestOpenmpBase.test_device} found"
3157-
)
3155+
devices = find_device_ids(type=TestOpenmpBase.test_device)
3156+
assert devices, (
3157+
f"Expected non-empty test devices list, no device with type {TestOpenmpBase.test_device} found"
3158+
)
31583159

3159-
# Use only the first device.
3160-
devices = [int(devices[0])]
3161-
print(f"Testing OpenMP target offloading on device: {devices}")
3160+
# Use only the first device.
3161+
devices = [int(devices[0])]
3162+
print(f"Testing OpenMP target offloading on device: {devices}")
31623163

31633164
def __init__(self, *args):
31643165
TestOpenmpBase.__init__(self, *args)

0 commit comments

Comments
 (0)