Skip to content

Commit f9e0af7

Browse files
committed
Add thirdparty tests of Awkward Array
1 parent 6ab470b commit f9e0af7

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

.github/workflows/pr.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ jobs:
3333
- test-wheels-deps-wheels
3434
- test-thirdparty-cudf
3535
- test-thirdparty-nvmath
36+
- test-thirdparty-awkward
3637
- build-docs
3738
- coverage-report
3839
secrets: inherit
@@ -150,6 +151,18 @@ jobs:
150151
matrix: ${{ needs.compute-matrix.outputs.TEST_MATRIX }}
151152
# TODO: Enable for CUDA 13 when a supporting version of nvmath-python is available
152153
matrix_filter: map(select(.ARCH == "amd64" and (.CUDA_VER | split(".") | .[0] | tonumber == 12))) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
154+
test-thirdparty-awkward:
155+
needs:
156+
- build-wheels
157+
- compute-matrix
158+
uses: ./.github/workflows/wheels-test.yaml
159+
with:
160+
build_type: pull-request
161+
script: "ci/test_thirdparty_awkward.sh"
162+
matrix: ${{ needs.compute-matrix.outputs.TEST_MATRIX }}
163+
# TODO: Enable for CUDA 13 in future
164+
matrix_filter: map(select(.ARCH == "amd64" and (.CUDA_VER | split(".") | .[0] | tonumber == 12))) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
165+
153166
build-docs:
154167
uses: ./.github/workflows/docs-build.yaml
155168
coverage-report:

ci/test_thirdparty_awkward.sh

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#!/bin/bash
2+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3+
# SPDX-License-Identifier: BSD-2-Clause
4+
5+
set -euo pipefail
6+
7+
CUDA_VER_MAJOR_MINOR=${CUDA_VER%.*}
8+
AWKWARD_VERSION="2.8.10"
9+
10+
rapids-logger "Install awkward and related libraries"
11+
12+
pip install awkward==${AWKWARD_VERSION} cupy pyarrow pandas nox
13+
14+
rapids-logger "Install wheel with test dependencies"
15+
package=$(realpath wheel/numba_cuda*.whl)
16+
echo "Package path: ${package}"
17+
python -m pip install \
18+
"${package}" \
19+
"cuda-python==${CUDA_VER_MAJOR_MINOR%.*}.*" \
20+
"cuda-core==0.3.*" \
21+
"nvidia-nvjitlink-cu12" \
22+
--group test
23+
24+
25+
rapids-logger "Clone awkward repository"
26+
git clone --recursive https://github.com/sckit-hep/awkward.git
27+
pushd awkward
28+
git checkout v${AWKWARD_VERSION}
29+
30+
rapids-logger "Generate awkward tests"
31+
nox -s prepare -- --tests
32+
33+
rapids-logger "Check GPU usage"
34+
nvidia-smi
35+
36+
rapids-logger "Show Numba system info"
37+
python -m numba --sysinfo
38+
39+
rapids-logger "Run Awkward CUDA tests"
40+
python -m pytest -v -n auto tests-cuda tests-cuda-kernels tests-cuda-kernels-explicit
41+
42+
popd

0 commit comments

Comments
 (0)