test future tensorrt version in windows wf #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Test Torch-TensorRT on Windows with Future TensorRT Versions | |
on: | |
pull_request: | |
workflow_dispatch: | |
permissions: | |
id-token: write | |
contents: read | |
packages: write | |
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 | |
generate-tensorrt-matrix: | |
needs: [generate-matrix] | |
outputs: | |
matrix: ${{ steps.generate.outputs.matrix }} | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- uses: actions/checkout@v3 | |
with: | |
repository: pytorch/tensorrt | |
- name: Generate tensorrt matrix | |
id: generate | |
run: | | |
set -eou pipefail | |
MATRIX_BLOB=${{ toJSON(needs.generate-matrix.outputs.matrix) }} | |
MATRIX_BLOB="$(python3 .github/scripts/generate-tensorrt-test-matrix.py --matrix "${MATRIX_BLOB}")" | |
echo "${MATRIX_BLOB}" | |
echo "matrix=${MATRIX_BLOB}" >> "${GITHUB_OUTPUT}" | |
substitute-runner: | |
needs: generate-tensorrt-matrix | |
outputs: | |
matrix: ${{ steps.substitute.outputs.matrix }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Substitute runner | |
id: substitute | |
run: | | |
echo matrix="$(echo '${{ needs.generate-tensorrt-matrix.outputs.matrix }}' | sed -e 's/windows.g4dn.xlarge/windows.g5.4xlarge.nvidia.gpu/g')" >> ${GITHUB_OUTPUT} | |
build: | |
needs: substitute-runner | |
name: Build torch-tensorrt whl package | |
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 | |
uses: ./.github/workflows/build-tensorrt-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 }} | |
smoke-test-script: ${{ matrix.smoke-test-script }} | |
package-name: ${{ matrix.package-name }} | |
trigger-event: ${{ github.event_name }} | |
timeout: 120 | |
tests-py-torchscript-fe: | |
name: Test torchscript frontend [Python] | |
needs: [substitute-runner, build] | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- repository: pytorch/tensorrt | |
package-name: torch_tensorrt | |
uses: ./.github/workflows/windows-test.yml | |
with: | |
job-name: tests-py-torchscript-fe | |
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 | |
script: | | |
set -x | |
export USE_HOST_DEPS=1 | |
export CI_BUILD=1 | |
pushd . | |
cd tests/modules | |
python -c "import torch; print(torch.cuda.is_available())" | |
python -c "import torch; print(torch.cuda.get_device_name(0))" | |
python -c "import torch; print(torch.cuda.get_device_properties(0))" | |
python hub.py | |
popd | |
pushd . | |
cd tests/py/ts | |
python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/ts_api_test_results.xml api/ | |
python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/ts_models_test_results.xml models/ | |
python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/ts_integrations_test_results.xml integrations/ | |
popd | |
# tests-py-dynamo-converters: | |
# name: Test dynamo converters [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-dynamo-converters | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/dynamo_converters_test_results.xml -n 8 conversion/ | |
# popd | |
# tests-py-dynamo-fe: | |
# name: Test dynamo frontend [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-dynamo-fe | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/dyn_models_export.xml --ir dynamo models/ | |
# popd | |
# tests-py-dynamo-serde: | |
# name: Test dynamo export serde [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-dynamo-serde | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/export_serde_test_results.xml --ir dynamo models/test_export_serde.py | |
# popd | |
# tests-py-torch-compile-be: | |
# name: Test torch compile backend [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-torch-compile-be | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# python -m pytest -ra -n 10 --junitxml=${RUNNER_TEST_RESULTS_DIR}/torch_compile_be_test_results.xml backend/ | |
# python -m pytest -ra -n 4 --junitxml=${RUNNER_TEST_RESULTS_DIR}/torch_complete_be_e2e_test_results.xml --ir torch_compile models/test_models.py | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/torch_compile_dyn_models_export.xml --ir torch_compile models/test_dyn_models.py | |
# popd | |
# tests-py-dynamo-core: | |
# name: Test dynamo core [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-dynamo-core | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# python -m pytest -ra -n 4 --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_dynamo_core_runtime_test_results.xml --ignore runtime/test_002_cudagraphs_py.py --ignore runtime/test_002_cudagraphs_cpp.py runtime/ | |
# python -m pytest -ra -n 4 --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_dynamo_core_partitioning_test_results.xml partitioning/ | |
# python -m pytest -ra -n 4 --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_dynamo_core_lowering_test_results.xml lowering/ | |
# popd | |
# tests-py-dynamo-cudagraphs: | |
# name: Test dynamo cudagraphs [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-dynamo-cudagraphs | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/dynamo | |
# nvidia-smi | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_dynamo_core_runtime_cudagraphs_cpp_test_results.xml runtime/test_002_cudagraphs_cpp.py || true | |
# python -m pytest -ra --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_dynamo_core_runtime_cudagraphs_py_test_results.xml runtime/test_002_cudagraphs_py.py || true | |
# popd | |
# tests-py-core: | |
# name: Test core [Python] | |
# needs: [generate-tensorrt-matrix, build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# include: | |
# - repository: pytorch/tensorrt | |
# package-name: torch_tensorrt | |
# pre-script: packaging/pre_build_script.sh | |
# post-script: packaging/post_build_script.sh | |
# smoke-test-script: packaging/smoke_test_script.sh | |
# uses: ./.github/workflows/linux-test.yml | |
# with: | |
# job-name: tests-py-core | |
# repository: "pytorch/tensorrt" | |
# ref: "" | |
# test-infra-repository: pytorch/test-infra | |
# test-infra-ref: main | |
# build-matrix: ${{ needs.generate-tensorrt-matrix.outputs.matrix }} | |
# pre-script: ${{ matrix.pre-script }} | |
# script: | | |
# export USE_HOST_DEPS=1 | |
# export CI_BUILD=1 | |
# pushd . | |
# cd tests/py/core | |
# python -m pytest -ra -n 4 --junitxml=${RUNNER_TEST_RESULTS_DIR}/tests_py_core_test_results.xml . | |
# popd | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref_name }}-${{ inputs.repository }}-${{ github.event_name == 'workflow_dispatch' }}-${{ inputs.job-name }}-2 | |
cancel-in-progress: false |