Skip to content

Commit 3f0b4b2

Browse files
Copilotleofangpre-commit-ci[bot]
authored andcommitted
CI: Consolidate test matrix configurations into ci/test-matrix.json with hard-coded values, optimized checkout, and prepared Windows self-hosted runner migration (#889)
* Initial plan * Consolidate test matrices from workflows into ci/test-matrix.json Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Hard-code all GPU and ARCH values in test-matrix.json with 6 fields per entry Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Update Windows test matrix with a100 GPU and latest-1 driver, configure self-hosted runners Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * fix * Revert eed0b71 and change Windows DRIVER from latest-1 to latest Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Add proxy cache setup to Windows workflow for self-hosted runners Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Remove Git for Windows and gh CLI installation steps, add T4 GPU support to Windows matrix Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Set fetch-depth: 1 for checkout steps and favor L4/T4 over A100 GPUs for Windows testing Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * Revert Windows workflow to GitHub-hosted runners with TODO comments for future self-hosted migration Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> * [pre-commit.ci] auto code formatting * Revert Win runner name change for now --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: leofang <5534781+leofang@users.noreply.github.com> Co-authored-by: Leo Fang <leof@nvidia.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent 6d031d9 commit 3f0b4b2

3 files changed

Lines changed: 150 additions & 57 deletions

File tree

.github/workflows/test-wheel-linux.yml

Lines changed: 21 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -34,74 +34,43 @@ jobs:
3434
outputs:
3535
MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }}
3636
steps:
37+
- name: Checkout ${{ github.event.repository.name }}
38+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
39+
with:
40+
fetch-depth: 1
41+
3742
- name: Validate Test Type
3843
run: |
3944
if [[ "$BUILD_TYPE" != "pull-request" ]] && [[ "$BUILD_TYPE" != "nightly" ]] && [[ "$BUILD_TYPE" != "branch" ]]; then
4045
echo "Invalid build type! Must be one of 'nightly', 'pull-request', or 'branch'."
4146
exit 1
4247
fi
48+
4349
- name: Compute Python Test Matrix
4450
id: compute-matrix
4551
run: |
46-
# Set a default GPU based upon architecture.
47-
gpu="l4"
48-
if [[ "${ARCH}" == "arm64" ]]; then
49-
gpu="a100"
50-
fi
51-
# Add a special entry for the H100 runner on amd64.
52-
special_runner=""
53-
if [[ "${ARCH}" == "amd64" ]]; then
54-
special_runner="- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: 'H100', DRIVER: 'latest' }"
55-
fi
56-
57-
# Please keep the matrices sorted in ascending order by the following:
58-
#
59-
# [PY_VER, CUDA_VER, LOCAL_CTK, GPU, DRIVER]
60-
#
61-
# Note that DRIVER: `earliest` does not work with CUDA 12.9.1 and LOCAL_CTK: 0 does not work with CUDA 12.0.1.
62-
#
63-
export MATRICES="
64-
pull-request:
65-
- { ARCH: ${ARCH}, PY_VER: '3.9', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
66-
- { ARCH: ${ARCH}, PY_VER: '3.9', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
67-
- { ARCH: ${ARCH}, PY_VER: '3.10', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
68-
- { ARCH: ${ARCH}, PY_VER: '3.11', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
69-
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'earliest' }
70-
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
71-
- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
72-
- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
73-
${special_runner}
74-
nightly:
75-
- { ARCH: ${ARCH}, PY_VER: '3.9', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
76-
- { ARCH: ${ARCH}, PY_VER: '3.9', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
77-
- { ARCH: ${ARCH}, PY_VER: '3.9', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
78-
- { ARCH: ${ARCH}, PY_VER: '3.10', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
79-
- { ARCH: ${ARCH}, PY_VER: '3.10', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
80-
- { ARCH: ${ARCH}, PY_VER: '3.10', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
81-
- { ARCH: ${ARCH}, PY_VER: '3.11', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
82-
- { ARCH: ${ARCH}, PY_VER: '3.11', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
83-
- { ARCH: ${ARCH}, PY_VER: '3.11', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
84-
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
85-
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
86-
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
87-
- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.0.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
88-
- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.9.1', LOCAL_CTK: '0', GPU: ${gpu}, DRIVER: 'latest' }
89-
- { ARCH: ${ARCH}, PY_VER: '3.13', CUDA_VER: '12.9.1', LOCAL_CTK: '1', GPU: ${gpu}, DRIVER: 'latest' }
90-
${special_runner}
91-
"
92-
9352
# Use the nightly matrix for branch tests
9453
MATRIX_TYPE="${BUILD_TYPE}"
9554
if [[ "${MATRIX_TYPE}" == "branch" ]]; then
9655
MATRIX_TYPE="nightly"
9756
fi
98-
export MATRIX_TYPE
99-
TEST_MATRIX=$(yq -n 'env(MATRICES) | .[strenv(MATRIX_TYPE)]')
100-
export TEST_MATRIX
57+
58+
# Read base matrix from JSON file for the specific architecture
59+
TEST_MATRIX=$(jq --arg arch "$ARCH" --arg matrix_type "$MATRIX_TYPE" '
60+
.linux[$matrix_type] |
61+
map(select(.ARCH == $arch))
62+
' ci/test-matrix.json)
63+
64+
# Add special runner for amd64 if applicable
65+
if [[ "${ARCH}" == "amd64" ]]; then
66+
SPECIAL_RUNNERS=$(jq '
67+
.linux.special_runners.amd64
68+
' ci/test-matrix.json)
69+
TEST_MATRIX=$(jq --argjson special "$SPECIAL_RUNNERS" '. + $special' <<< "$TEST_MATRIX")
70+
fi
10171
10272
MATRIX="$(
103-
yq -n -o json 'env(TEST_MATRIX)' | \
104-
jq -c '${{ inputs.matrix_filter }} | if (. | length) > 0 then {include: .} else "Error: Empty matrix\n" | halt_error(1) end'
73+
jq -c '${{ inputs.matrix_filter }} | if (. | length) > 0 then {include: .} else "Error: Empty matrix\n" | halt_error(1) end' <<< "$TEST_MATRIX"
10574
)"
10675
10776
echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}"

.github/workflows/test-wheel-windows.yml

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ jobs:
3232
outputs:
3333
MATRIX: ${{ steps.compute-matrix.outputs.MATRIX }}
3434
steps:
35+
- name: Checkout ${{ github.event.repository.name }}
36+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
37+
with:
38+
fetch-depth: 1
39+
3540
- name: Validate Test Type
3641
run: |
3742
if [[ "$BUILD_TYPE" != "pull-request" ]] && [[ "$BUILD_TYPE" != "nightly" ]] && [[ "$BUILD_TYPE" != "branch" ]]; then
@@ -41,6 +46,7 @@ jobs:
4146
- name: Compute Python Test Matrix
4247
id: compute-matrix
4348
run: |
49+
<<<<<<< HEAD
4450
# Please keep the matrices sorted in ascending order by the following:
4551
#
4652
# [PY_VER, CUDA_VER, LOCAL_CTK]
@@ -54,44 +60,61 @@ jobs:
5460
- { ARCH: ${ARCH}, PY_VER: '3.12', CUDA_VER: '12.9.1', LOCAL_CTK: '1' }
5561
"
5662
63+
=======
64+
>>>>>>> b4644f287 (CI: Consolidate test matrix configurations into ci/test-matrix.json with hard-coded values, optimized checkout, and prepared Windows self-hosted runner migration (#889))
5765
# Use the nightly matrix for branch tests
5866
MATRIX_TYPE="${BUILD_TYPE}"
5967
if [[ "${MATRIX_TYPE}" == "branch" ]]; then
6068
MATRIX_TYPE="nightly"
6169
fi
62-
export MATRIX_TYPE
63-
TEST_MATRIX=$(yq -n 'env(MATRICES) | .[strenv(MATRIX_TYPE)]')
64-
export TEST_MATRIX
70+
71+
# Read base matrix from JSON file for the specific architecture
72+
TEST_MATRIX=$(jq --arg arch "$ARCH" --arg matrix_type "$MATRIX_TYPE" '
73+
.windows[$matrix_type] |
74+
map(select(.ARCH == $arch))
75+
' ci/test-matrix.json)
6576
6677
MATRIX="$(
67-
yq -n -o json 'env(TEST_MATRIX)' | \
68-
jq -c '${{ inputs.matrix_filter }} | if (. | length) > 0 then {include: .} else "Error: Empty matrix\n" | halt_error(1) end'
78+
jq -c '${{ inputs.matrix_filter }} | if (. | length) > 0 then {include: .} else "Error: Empty matrix\n" | halt_error(1) end' <<< "$TEST_MATRIX"
6979
)"
7080

7181
echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}"
7282

7383
test:
84+
# TODO: switch to this once the self-hosted runners are ready
85+
# name: py${{ matrix.PY_VER }}, ${{ matrix.CUDA_VER }}, ${{ (matrix.LOCAL_CTK == '1' && 'local') || 'wheels' }}, GPU ${{ matrix.GPU }}
7486
name: py${{ matrix.PY_VER }}, ${{ matrix.CUDA_VER }}, ${{ (matrix.LOCAL_CTK == '1' && 'local') || 'wheels' }}
7587
# The build stage could fail but we want the CI to keep moving.
7688
needs: compute-matrix
7789
strategy:
7890
fail-fast: false
7991
matrix: ${{ fromJSON(needs.compute-matrix.outputs.MATRIX) }}
8092
if: ${{ github.repository_owner == 'nvidia' && !cancelled() }}
93+
# TODO: switch to self-hosted runners once they are ready
94+
# runs-on: "windows-${{ matrix.ARCH }}-gpu-${{ matrix.GPU }}-${{ matrix.DRIVER }}-1"
8195
runs-on: 'cuda-python-windows-gpu-github'
8296
steps:
8397
- name: Checkout ${{ github.event.repository.name }}
8498
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
8599
with:
86100
fetch-depth: 0
87101

102+
<<<<<<< HEAD
103+
=======
104+
# TODO: use setup-proxy-cache once we have self-hosted Windows runners
105+
# - name: Setup proxy cache
106+
# uses: nv-gha-runners/setup-proxy-cache@main
107+
# continue-on-error: true
108+
109+
>>>>>>> b4644f287 (CI: Consolidate test matrix configurations into ci/test-matrix.json with hard-coded values, optimized checkout, and prepared Windows self-hosted runner migration (#889))
88110
- name: Update driver
89111
run: |
90112
.github/workflows/install_gpu_driver.ps1
91113
92114
- name: Ensure GPU is working
93115
run: nvidia-smi
94116

117+
# TODO: remove this block once self-hosted runners are ready
95118
- name: Install Git for Windows
96119
# the GPU runner image does not have Git Bash pre-installed...
97120
env:
@@ -131,6 +154,7 @@ jobs:
131154
name: ${{ env.CUDA_BINDINGS_ARTIFACT_NAME }}
132155
path: ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}
133156

157+
# TODO: remove this block once self-hosted runners are ready
134158
- name: Install gh cli
135159
# the GPU runner image does not have gh pre-installed...
136160
env:

ci/test-matrix.json

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
{
2+
"_description": "Test matrix configurations for CUDA Python CI workflows. This file consolidates the test matrices that were previously hardcoded in the workflow files. All GPU and ARCH values are hard-coded for each architecture: l4 GPU for amd64, a100 GPU for arm64.",
3+
"_sorted_by": "Please keep matrices sorted in ascending order by [ARCH, PY_VER, CUDA_VER, LOCAL_CTK, GPU, DRIVER]",
4+
"_notes": "DRIVER: 'earliest' does not work with CUDA 12.9.1 and LOCAL_CTK: 0 does not work with CUDA 12.0.1",
5+
"linux": {
6+
"pull-request": [
7+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
8+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
9+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
10+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "13.0.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
11+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
12+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
13+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
14+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "13.0.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
15+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
16+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
17+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
18+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
19+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
20+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "13.0.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
21+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
22+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
23+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
24+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "13.0.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
25+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
26+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" }
27+
],
28+
"nightly": [
29+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "earliest" },
30+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
31+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
32+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
33+
{ "ARCH": "amd64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
34+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "earliest" },
35+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
36+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
37+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
38+
{ "ARCH": "amd64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
39+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "earliest" },
40+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
41+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
42+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
43+
{ "ARCH": "amd64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
44+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "earliest" },
45+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
46+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
47+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
48+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
49+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "earliest" },
50+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
51+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
52+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
53+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" },
54+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "earliest" },
55+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
56+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
57+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
58+
{ "ARCH": "arm64", "PY_VER": "3.9", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
59+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "earliest" },
60+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
61+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
62+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
63+
{ "ARCH": "arm64", "PY_VER": "3.10", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
64+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "earliest" },
65+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
66+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
67+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
68+
{ "ARCH": "arm64", "PY_VER": "3.11", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
69+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "earliest" },
70+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
71+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
72+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
73+
{ "ARCH": "arm64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
74+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "earliest" },
75+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
76+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "12.0.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" },
77+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "a100", "DRIVER": "latest" },
78+
{ "ARCH": "arm64", "PY_VER": "3.13", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "a100", "DRIVER": "latest" }
79+
],
80+
"special_runners": {
81+
"amd64": [
82+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "H100", "DRIVER": "latest" }
83+
]
84+
}
85+
},
86+
"windows": {
87+
"pull-request": [
88+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
89+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "t4", "DRIVER": "latest" },
90+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "13.0.0", "LOCAL_CTK": "0", "GPU": "t4", "DRIVER": "latest" },
91+
{ "ARCH": "amd64", "PY_VER": "3.13", "CUDA_VER": "13.0.0", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" }
92+
],
93+
"nightly": [
94+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "0", "GPU": "l4", "DRIVER": "latest" },
95+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "11.8.0", "LOCAL_CTK": "1", "GPU": "t4", "DRIVER": "latest" },
96+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "0", "GPU": "t4", "DRIVER": "latest" },
97+
{ "ARCH": "amd64", "PY_VER": "3.12", "CUDA_VER": "12.9.1", "LOCAL_CTK": "1", "GPU": "l4", "DRIVER": "latest" }
98+
]
99+
}
100+
}

0 commit comments

Comments
 (0)