pull #148
This file contains hidden or 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: pull | |
| on: | |
| pull_request: | |
| branches-ignore: | |
| - nightly | |
| push: | |
| branches: | |
| - main | |
| - release/* | |
| - landchecks/* | |
| tags: | |
| - ciflow/pull/* | |
| workflow_dispatch: | |
| inputs: | |
| jobs-to-include: | |
| description: "Space-separated list of job display names to run (empty = all)" | |
| required: false | |
| default: "" | |
| type: string | |
| tests-to-include: | |
| description: "Space-separated tests to include (passed to test runner; empty = default)" | |
| required: false | |
| default: "" | |
| type: string | |
| schedule: | |
| - cron: 29 8 * * * # about 1:29am PDT | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' && github.run_id }}-${{ github.event_name == 'schedule' }} | |
| cancel-in-progress: true | |
| permissions: | |
| id-token: write | |
| contents: read | |
| jobs: | |
| # See job-filter.yml for rules on adding job filter conditions | |
| job-filter: | |
| if: github.repository_owner == 'pytorch' | |
| name: job-filter | |
| uses: ./.github/workflows/job-filter.yml | |
| with: | |
| jobs-to-include: ${{ github.event.inputs.jobs-to-include || '' }} | |
| llm-td: | |
| if: github.repository_owner == 'pytorch' | |
| name: before-test | |
| uses: ./.github/workflows/llm_td_retrieval.yml | |
| permissions: | |
| id-token: write | |
| contents: read | |
| target-determination: | |
| name: before-test | |
| uses: ./.github/workflows/target_determination.yml | |
| needs: llm-td | |
| permissions: | |
| id-token: write | |
| contents: read | |
| get-label-type: | |
| name: get-label-type | |
| uses: pytorch/pytorch/.github/workflows/_runner-determinator.yml@main | |
| if: ${{ (github.event_name != 'schedule' || github.repository == 'pytorch/pytorch') && github.repository_owner == 'pytorch' }} | |
| with: | |
| triggering_actor: ${{ github.triggering_actor }} | |
| issue_owner: ${{ github.event.pull_request.user.login || github.event.issue.user.login }} | |
| curr_branch: ${{ github.head_ref || github.ref_name }} | |
| linux-jammy-py3_10-gcc11-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-gcc11 ') || contains(needs.job-filter.outputs.jobs, ' linux-docs ') }} | |
| name: linux-jammy-py3.10-gcc11 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-gcc11 | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.10-gcc11 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "default", shard: 2, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "default", shard: 3, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "default", shard: 4, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "default", shard: 5, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "docs_test", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "jit_legacy", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "backwards_compat", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| { config: "distributed", shard: 1, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "distributed", shard: 2, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "numpy_2_x", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| { config: "libtorch_agnostic_targetting", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "openreg", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-gcc11-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-gcc11 ') }} | |
| name: linux-jammy-py3.10-gcc11 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_10-gcc11-build | |
| - target-determination | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_10-gcc11-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_10-gcc11-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_10-gcc11-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-py3_14t-clang15-build: | |
| name: linux-jammy-py3.14t-clang15 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: get-label-type | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.14t-clang15 | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.14t-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 2, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 3, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 4, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 5, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "crossref", shard: 1, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "crossref", shard: 2, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 1, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 2, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 3, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "einops", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "openreg", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_14t-clang15-test: | |
| name: linux-jammy-py3.14t-clang15 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_14t-clang15-build | |
| - target-determination | |
| with: | |
| build-environment: linux-jammy-py3.14t-clang15 | |
| docker-image: ${{ needs.linux-jammy-py3_14t-clang15-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_14t-clang15-build.outputs.test-matrix }} | |
| secrets: inherit | |
| linux-docs: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-docs ') }} | |
| name: linux-docs | |
| uses: ./.github/workflows/_docs.yml | |
| needs: | |
| - linux-jammy-py3_10-gcc11-build | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_10-gcc11-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_10-gcc11-build.outputs.docker-image }} | |
| secrets: inherit | |
| linux-jammy-py3_10-gcc11-no-ops: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-gcc11-no-ops ') }} | |
| name: linux-jammy-py3.10-gcc11-no-ops | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-gcc11-no-ops | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.10-gcc11 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 1 }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-gcc11-pch: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-gcc11-pch ') }} | |
| name: linux-jammy-py3.10-gcc11-pch | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-gcc11-pch | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.10-gcc11 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 1 }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-clang18-asan-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang18-asan ') }} | |
| name: linux-jammy-py3.10-clang18-asan | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner: linux.c7i.4xlarge | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-clang18-asan | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3-clang18-asan | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 2, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 3, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 4, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 5, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 6, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 7, num_shards: 7, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "openreg", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| ]} | |
| sync-tag: asan-build | |
| secrets: inherit | |
| linux-jammy-py3_10-clang18-asan-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang18-asan ') }} | |
| name: linux-jammy-py3.10-clang18-asan | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_10-clang18-asan-build | |
| - target-determination | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_10-clang18-asan-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_10-clang18-asan-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_10-clang18-asan-build.outputs.test-matrix }} | |
| sync-tag: asan-test | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-py3_10-clang15-onnx-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang15-onnx ') }} | |
| name: linux-jammy-py3.10-clang15-onnx | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-clang15-onnx | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3-clang15-onnx | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| { config: "default", shard: 2, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-clang15-onnx-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang15-onnx ') }} | |
| name: linux-jammy-py3.10-clang15-onnx | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_10-clang15-onnx-build | |
| - target-determination | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_10-clang15-onnx-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_10-clang15-onnx-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_10-clang15-onnx-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-py3_10-clang15-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang15 ') }} | |
| name: linux-jammy-py3.10-clang15 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-clang15 | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.10-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 2, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 3, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 4, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 5, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "crossref", shard: 1, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "crossref", shard: 2, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 1, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 2, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 3, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "einops", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "openreg", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-clang15-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-clang15 ') }} | |
| name: linux-jammy-py3.10-clang15 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_10-clang15-build | |
| - target-determination | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_10-clang15-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_10-clang15-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_10-clang15-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-py3_14-clang15-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.14-clang15 ') }} | |
| name: linux-jammy-py3.14-clang15 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.14-clang15 | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.14-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 2, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 3, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 4, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "default", shard: 5, num_shards: 5, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| { config: "crossref", shard: 1, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "crossref", shard: 2, num_shards: 2, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 1, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 2, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "dynamo_wrapped", shard: 3, num_shards: 3, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "einops", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| { config: "openreg", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_14-clang15-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.14-clang15 ') }} | |
| name: linux-jammy-py3.14-clang15 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-py3_14-clang15-build | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-py3_14-clang15-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-py3_14-clang15-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-py3_14-clang15-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-cuda12_8-cudnn9-py3_10-clang15-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-cuda12.8-cudnn9-py3.10-clang15 ') }} | |
| name: linux-jammy-cuda12.8-cudnn9-py3.10-clang15 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-cuda12.8-cudnn9-py3.10-clang15 | |
| docker-image-name: ci-image:pytorch-linux-jammy-cuda12.8-cudnn9-py3.10-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 1 }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-cpu-py3_10-gcc11-bazel-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-cpu-py3.10-gcc11-bazel-test ') }} | |
| name: linux-jammy-cpu-py3.10-gcc11-bazel-test | |
| uses: ./.github/workflows/_bazel-build-test.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner: "${{ needs.get-label-type.outputs.label-type }}linux.large" | |
| build-environment: linux-jammy-cuda12.8-py3.10-gcc11-bazel-test | |
| docker-image-name: ci-image:pytorch-linux-jammy-cuda12.8-cudnn9-py3-gcc11 | |
| cuda-version: cpu | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.4xlarge" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-py3_10-gcc11-mobile-lightweight-dispatch-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-py3.10-gcc11-mobile-lightweight-dispatch-build ') }} | |
| name: linux-jammy-py3.10-gcc11-mobile-lightweight-dispatch-build | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.10-gcc11-mobile-lightweight-dispatch-build | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.10-gcc11 | |
| build-generates-artifacts: false | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 1 }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-rocm-py3_10-build: | |
| if: github.event_name == 'pull_request' || (needs.job-filter.outputs.jobs != '' && contains(needs.job-filter.outputs.jobs, ' linux-jammy-rocm-py3.10 ')) | |
| # don't run build twice on main | |
| name: linux-jammy-rocm-py3.10 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-rocm-py3.10 | |
| docker-image-name: ci-image:pytorch-linux-jammy-rocm-n-py3 | |
| sync-tag: rocm-build | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 3, runner: "linux.rocm.gpu.2" }, | |
| { config: "default", shard: 2, num_shards: 3, runner: "linux.rocm.gpu.2" }, | |
| { config: "default", shard: 3, num_shards: 3, runner: "linux.rocm.gpu.2" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-cuda12_8-py3_10-gcc11-inductor-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' cuda12.8-py3.10-gcc11-sm75 ') }} | |
| name: cuda12.8-py3.10-gcc11-sm75 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-cuda12.8-py3.10-gcc11-sm75 | |
| docker-image-name: ci-image:pytorch-linux-jammy-cuda12.8-cudnn9-py3-gcc11-inductor-benchmarks | |
| test-matrix: | | |
| { include: [ | |
| { config: "pr_time_benchmarks", shard: 1, num_shards: 1, runner: "linux.g4dn.metal.nvidia.gpu" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-cuda12_8-py3_10-gcc11-inductor-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' cuda12.8-py3.10-gcc11-sm75 ') }} | |
| name: cuda12.8-py3.10-gcc11-sm75 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-cuda12_8-py3_10-gcc11-inductor-build | |
| - job-filter | |
| with: | |
| build-environment: ${{ needs.linux-jammy-cuda12_8-py3_10-gcc11-inductor-build.outputs.build-environment }} | |
| docker-image: ${{ needs.linux-jammy-cuda12_8-py3_10-gcc11-inductor-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-cuda12_8-py3_10-gcc11-inductor-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-cuda13_0-py3_10-gcc11-inductor-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' cuda13.0-py3.10-gcc11-sm75 ') }} | |
| name: cuda13.0-py3.10-gcc11-sm75 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-cuda13.0-py3.10-gcc11-sm75 | |
| docker-image-name: ci-image:pytorch-linux-jammy-cuda13.0-cudnn9-py3-gcc11-inductor-benchmarks | |
| test-matrix: | | |
| { include: [ | |
| { config: "pr_time_benchmarks", shard: 1, num_shards: 1, runner: "linux.g4dn.metal.nvidia.gpu" }, | |
| ]} | |
| secrets: inherit | |
| linux-jammy-cuda13_0-py3_10-gcc11-inductor-test: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' cuda13.0-py3.10-gcc11-sm75 ') }} | |
| name: cuda13.0-py3.10-gcc11-sm75 | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: | |
| - linux-jammy-cuda13_0-py3_10-gcc11-inductor-build | |
| - job-filter | |
| with: | |
| build-environment: linux-jammy-cuda13.0-py3.10-gcc11-sm75 | |
| docker-image: ${{ needs.linux-jammy-cuda13_0-py3_10-gcc11-inductor-build.outputs.docker-image }} | |
| test-matrix: ${{ needs.linux-jammy-cuda13_0-py3_10-gcc11-inductor-build.outputs.test-matrix }} | |
| tests-to-include: ${{ github.event.inputs.tests-to-include || '' }} | |
| secrets: inherit | |
| linux-jammy-xpu-n-py3_10-build: | |
| if: ${{ needs.job-filter.outputs.jobs == '' || contains(needs.job-filter.outputs.jobs, ' linux-jammy-xpu-n-py3.10 ') }} | |
| name: linux-jammy-xpu-n-py3.10 | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: | |
| - get-label-type | |
| - job-filter | |
| with: | |
| # This should sync with the build in xpu.yml but xpu uses a larger runner | |
| # sync-tag: linux-xpu-n-build | |
| runner_prefix: ${{ needs.get-label-type.outputs.label-type }} | |
| runner: linux.c7i.4xlarge | |
| build-environment: linux-noble-xpu-n-py3.10 | |
| docker-image-name: ci-image:pytorch-linux-noble-xpu-n-py3 | |
| test-matrix: | | |
| { include: [ | |
| { config: "default", shard: 1, num_shards: 4, runner: "linux.idc.xpu" }, | |
| { config: "default", shard: 2, num_shards: 4, runner: "linux.idc.xpu" }, | |
| { config: "default", shard: 3, num_shards: 4, runner: "linux.idc.xpu" }, | |
| { config: "default", shard: 4, num_shards: 4, runner: "linux.idc.xpu" }, | |
| ]} | |
| secrets: inherit | |
| dynamo-cpython-build: | |
| name: dynamo-cpython-build | |
| uses: ./.github/workflows/_linux-build.yml | |
| needs: get-label-type | |
| with: | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build-environment: linux-jammy-py3.13-clang15 | |
| docker-image-name: ci-image:pytorch-linux-jammy-py3.13-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "dynamo_cpython", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| ]} | |
| secrets: inherit | |
| dynamo-cpython-test: | |
| name: dynamo-cpython-test | |
| uses: ./.github/workflows/_linux-test.yml | |
| needs: [get-label-type, dynamo-cpython-build] | |
| with: | |
| build-environment: linux-jammy-py3.13-clang15 | |
| docker-image: ci-image:pytorch-linux-jammy-py3.13-clang15 | |
| test-matrix: | | |
| { include: [ | |
| { config: "dynamo_cpython", shard: 1, num_shards: 1, runner: "${{ needs.get-label-type.outputs.label-type }}linux.c7i.2xlarge" }, | |
| ]} | |
| secrets: inherit |