-
Notifications
You must be signed in to change notification settings - Fork 407
Expand file tree
/
Copy pathbuild-test-windows_rtx-python-only.yml
More file actions
124 lines (116 loc) · 4.24 KB
/
Copy pathbuild-test-windows_rtx-python-only.yml
File metadata and controls
124 lines (116 loc) · 4.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
name: RTX - Python-only build and test Windows wheels
on:
pull_request:
push:
branches:
- main
- nightly
- release/*
tags:
# NOTE: Binary build pipelines should only get triggered on release candidate builds
# Release candidate tags look like: v1.11.0-rc1
- v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+
workflow_dispatch:
permissions:
contents: read
jobs:
generate-matrix:
uses: pytorch/test-infra/.github/workflows/generate_binary_build_matrix.yml@main
with:
package-type: wheel
os: windows
test-infra-repository: pytorch/test-infra
test-infra-ref: main
with-rocm: false
with-cpu: false
filter-matrix:
needs: [generate-matrix]
outputs:
matrix: ${{ steps.generate.outputs.matrix }}
runs-on: ubuntu-latest
steps:
- uses: actions/setup-python@v6
with:
python-version: "3.11"
- uses: actions/checkout@v6
with:
repository: pytorch/tensorrt
- name: Generate matrix
id: generate
run: |
set -eou pipefail
MATRIX_BLOB=${{ toJSON(needs.generate-matrix.outputs.matrix) }}
MATRIX_BLOB="$(python3 .github/scripts/filter-matrix.py --use-rtx true --matrix "${MATRIX_BLOB}")"
echo "${MATRIX_BLOB}"
echo "matrix=${MATRIX_BLOB}" >> "${GITHUB_OUTPUT}"
substitute-runner:
needs: filter-matrix
outputs:
matrix: ${{ steps.substitute.outputs.matrix }}
runs-on: ubuntu-latest
steps:
- name: Substitute runner
id: substitute
run: |
echo matrix="$(echo '${{ needs.filter-matrix.outputs.matrix }}' | sed -e 's/windows.g4dn.xlarge/windows.g5.4xlarge.nvidia.gpu/g')" >> ${GITHUB_OUTPUT}
build:
needs: substitute-runner
permissions:
id-token: write
contents: read
strategy:
fail-fast: false
matrix:
include:
- repository: pytorch/tensorrt
pre-script: packaging/pre_build_script_windows.sh
env-script: packaging/vc_env_helper.bat
smoke-test-script: packaging/smoke_test_windows.py
package-name: torch_tensorrt
display-name: RTX - Python-only build Windows torch-tensorrt-rtx whl package
name: ${{ matrix.display-name }}
uses: ./.github/workflows/build_windows.yml
with:
repository: ${{ matrix.repository }}
ref: ""
test-infra-repository: pytorch/test-infra
test-infra-ref: main
build-matrix: ${{ needs.substitute-runner.outputs.matrix }}
pre-script: ${{ matrix.pre-script }}
env-script: ${{ matrix.env-script }}
wheel-build-params: "--py-only --use-rtx"
smoke-test-script: ${{ matrix.smoke-test-script }}
package-name: ${{ matrix.package-name }}
trigger-event: ${{ github.event_name }}
timeout: 120
use-rtx: true
dynamo-runtime-tests:
name: ${{ matrix.display-name }}
needs: [substitute-runner, build]
if: ${{ (github.ref_name == 'main' || github.ref_name == 'nightly' || startsWith(github.ref_name, 'release/') || (startsWith(github.ref, 'refs/tags/v') && contains(github.ref_name, '-rc')) || contains(github.event.pull_request.labels.*.name, 'Force All Tests[L0+L1+L2]')) && always() || success() }}
strategy:
fail-fast: false
matrix:
include:
- repository: pytorch/tensorrt
package-name: torch_tensorrt
display-name: RTX - Python-only dynamo runtime tests
uses: ./.github/workflows/windows-test.yml
with:
job-name: rtx-python-only-dynamo-runtime-tests
repository: ${{ matrix.repository }}
ref: ""
test-infra-repository: pytorch/test-infra
test-infra-ref: main
build-matrix: ${{ needs.substitute-runner.outputs.matrix }}
pre-script: packaging/driver_upgrade.bat
use-rtx: true
script: |
set -euo pipefail
pushd .
cd tests/py/dynamo/runtime
../../../../packaging/vc_env_helper.bat python -m pytest -ra -n 8 --junitxml=${RUNNER_TEST_RESULTS_DIR}/python_only_dynamo_runtime_tests_results.xml .
popd
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref_name }}-tensorrt-rtx-python-only-${{ github.event_name == 'workflow_dispatch' }}
cancel-in-progress: true