add torch.concat to normalization pass (#156574) #315
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
| # @generated DO NOT EDIT MANUALLY | |
| # Template is at: .github/templates/linux_binary_build_workflow.yml.j2 | |
| # Generation script: .github/scripts/generate_ci_workflows.py | |
| name: linux-binary-manywheel | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - 'ciflow/trunk/*' | |
| workflow_dispatch: | |
| permissions: | |
| id-token: write | |
| env: | |
| # Needed for conda builds | |
| ALPINE_IMAGE: "308535385114.dkr.ecr.us-east-1.amazonaws.com/tool/alpine" | |
| AWS_DEFAULT_REGION: us-east-1 | |
| BINARY_ENV_FILE: /tmp/env | |
| BUILD_ENVIRONMENT: linux-binary-manywheel | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| PR_NUMBER: ${{ github.event.pull_request.number }} | |
| PYTORCH_FINAL_PACKAGE_DIR: /artifacts | |
| PYTORCH_ROOT: /pytorch | |
| SHA1: ${{ github.event.pull_request.head.sha || github.sha }} | |
| SKIP_ALL_TESTS: 0 | |
| concurrency: | |
| group: linux-binary-manywheel-${{ github.event.pull_request.number || github.ref_name }}-${{ github.ref_type == 'branch' && github.sha }}-${{ github.event_name == 'workflow_dispatch' }} | |
| cancel-in-progress: true | |
| jobs: | |
| get-label-type: | |
| if: github.repository_owner == 'pytorch' | |
| name: get-label-type | |
| uses: pytorch/pytorch/.github/workflows/_runner-determinator.yml@main | |
| 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 }} | |
| curr_ref_type: ${{ github.ref_type }} | |
| manywheel-py3_9-cuda12_6-build: | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| uses: ./.github/workflows/_binary-build-linux.yml | |
| needs: get-label-type | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu126 | |
| GPU_ARCH_VERSION: 12.6 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.6 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build_name: manywheel-py3_9-cuda12_6 | |
| build_environment: linux-binary-manywheel | |
| PYTORCH_EXTRA_INSTALL_REQUIREMENTS: nvidia-cuda-nvrtc-cu12==12.6.77; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-runtime-cu12==12.6.77; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-cupti-cu12==12.6.80; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cudnn-cu12==9.10.2.21; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cublas-cu12==12.6.4.1; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufft-cu12==11.3.0.4; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-curand-cu12==10.3.7.77; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusolver-cu12==11.7.1.2; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparse-cu12==12.5.4.2; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparselt-cu12==0.7.1; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nccl-cu12==2.27.3; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvshmem-cu12==3.2.5; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvtx-cu12==12.6.77; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvjitlink-cu12==12.6.85; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufile-cu12==1.11.1.6; platform_system == 'Linux' and platform_machine == 'x86_64' | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-cuda12_6-test: # Testing | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| needs: | |
| - manywheel-py3_9-cuda12_6-build | |
| - get-label-type | |
| uses: ./.github/workflows/_binary-test-linux.yml | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu126 | |
| GPU_ARCH_VERSION: 12.6 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.6 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| build_name: manywheel-py3_9-cuda12_6 | |
| build_environment: linux-binary-manywheel | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| runs_on: linux.4xlarge.nvidia.gpu # for other cuda versions, we use 4xlarge runner | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-cuda12_8-build: | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| uses: ./.github/workflows/_binary-build-linux.yml | |
| needs: get-label-type | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu128 | |
| GPU_ARCH_VERSION: 12.8 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.8 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build_name: manywheel-py3_9-cuda12_8 | |
| build_environment: linux-binary-manywheel | |
| PYTORCH_EXTRA_INSTALL_REQUIREMENTS: nvidia-cuda-nvrtc-cu12==12.8.93; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-runtime-cu12==12.8.90; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-cupti-cu12==12.8.90; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cudnn-cu12==9.10.2.21; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cublas-cu12==12.8.4.1; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufft-cu12==11.3.3.83; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-curand-cu12==10.3.9.90; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusolver-cu12==11.7.3.90; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparse-cu12==12.5.8.93; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparselt-cu12==0.7.1; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nccl-cu12==2.27.3; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvshmem-cu12==3.2.5; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvtx-cu12==12.8.90; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvjitlink-cu12==12.8.93; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufile-cu12==1.13.1.3; platform_system == 'Linux' and platform_machine == 'x86_64' | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-cuda12_8-test: # Testing | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| needs: | |
| - manywheel-py3_9-cuda12_8-build | |
| - get-label-type | |
| uses: ./.github/workflows/_binary-test-linux.yml | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu128 | |
| GPU_ARCH_VERSION: 12.8 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.8 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| build_name: manywheel-py3_9-cuda12_8 | |
| build_environment: linux-binary-manywheel | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| runs_on: linux.g4dn.4xlarge.nvidia.gpu # 12.8 and 12.9 build need sm_70+ runner | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-cuda12_9-build: | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| uses: ./.github/workflows/_binary-build-linux.yml | |
| needs: get-label-type | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu129 | |
| GPU_ARCH_VERSION: 12.9 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.9 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build_name: manywheel-py3_9-cuda12_9 | |
| build_environment: linux-binary-manywheel | |
| PYTORCH_EXTRA_INSTALL_REQUIREMENTS: nvidia-cuda-nvrtc-cu12==12.9.86; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-runtime-cu12==12.9.79; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cuda-cupti-cu12==12.9.79; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cudnn-cu12==9.10.2.21; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cublas-cu12==12.9.1.4; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufft-cu12==11.4.1.4; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-curand-cu12==10.3.10.19; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusolver-cu12==11.7.5.82; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparse-cu12==12.5.10.65; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cusparselt-cu12==0.7.1; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nccl-cu12==2.27.3; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvtx-cu12==12.9.79; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-nvjitlink-cu12==12.9.86; platform_system == 'Linux' and platform_machine == 'x86_64' | nvidia-cufile-cu12==1.14.1.1; platform_system == 'Linux' and platform_machine == 'x86_64' | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-cuda12_9-test: # Testing | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| needs: | |
| - manywheel-py3_9-cuda12_9-build | |
| - get-label-type | |
| uses: ./.github/workflows/_binary-test-linux.yml | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: cu129 | |
| GPU_ARCH_VERSION: 12.9 | |
| GPU_ARCH_TYPE: cuda | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: cuda12.9 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| build_name: manywheel-py3_9-cuda12_9 | |
| build_environment: linux-binary-manywheel | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| runs_on: linux.g4dn.4xlarge.nvidia.gpu # 12.8 and 12.9 build need sm_70+ runner | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-rocm6_4-build: | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| uses: ./.github/workflows/_binary-build-linux.yml | |
| needs: get-label-type | |
| with: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: rocm6.4 | |
| GPU_ARCH_VERSION: 6.4 | |
| GPU_ARCH_TYPE: rocm | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: rocm6.4 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| runner_prefix: "${{ needs.get-label-type.outputs.label-type }}" | |
| build_name: manywheel-py3_9-rocm6_4 | |
| build_environment: linux-binary-manywheel | |
| secrets: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| manywheel-py3_9-rocm6_4-test: # Testing | |
| if: ${{ github.repository_owner == 'pytorch' }} | |
| needs: | |
| - manywheel-py3_9-rocm6_4-build | |
| - get-label-type | |
| runs-on: linux.rocm.gpu.mi250 | |
| timeout-minutes: 240 | |
| env: | |
| PYTORCH_ROOT: /pytorch | |
| PACKAGE_TYPE: manywheel | |
| # TODO: This is a legacy variable that we eventually want to get rid of in | |
| # favor of GPU_ARCH_VERSION | |
| DESIRED_CUDA: rocm6.4 | |
| GPU_ARCH_VERSION: 6.4 | |
| GPU_ARCH_TYPE: rocm | |
| SKIP_ALL_TESTS: 1 | |
| DOCKER_IMAGE: manylinux2_28-builder | |
| DOCKER_IMAGE_TAG_PREFIX: rocm6.4 | |
| use_split_build: False | |
| DESIRED_PYTHON: "3.9" | |
| steps: | |
| - name: Setup ROCm | |
| uses: ./.github/actions/setup-rocm | |
| - uses: actions/[email protected] | |
| name: Download Build Artifacts | |
| with: | |
| name: manywheel-py3_9-rocm6_4 | |
| path: "${{ runner.temp }}/artifacts/" | |
| - name: Checkout PyTorch | |
| uses: actions/checkout@v4 | |
| with: | |
| ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
| submodules: recursive | |
| path: pytorch | |
| show-progress: false | |
| - name: Clean PyTorch checkout | |
| run: | | |
| # Remove any artifacts from the previous checkouts | |
| git clean -fxd | |
| working-directory: pytorch | |
| - name: ROCm set GPU_FLAG | |
| run: | | |
| echo "GPU_FLAG=--device=/dev/mem --device=/dev/kfd --device=/dev/dri --group-add video --group-add daemon" >> "${GITHUB_ENV}" | |
| - name: configure aws credentials | |
| id: aws_creds | |
| if: ${{ startsWith(github.event.ref, 'refs/tags/ciflow/') }} | |
| uses: aws-actions/configure-aws-credentials@v4 | |
| with: | |
| role-to-assume: arn:aws:iam::308535385114:role/gha_workflow_s3_and_ecr_read_only | |
| aws-region: us-east-1 | |
| role-duration-seconds: 18000 | |
| - name: Calculate docker image | |
| id: calculate-docker-image | |
| uses: pytorch/test-infra/.github/actions/calculate-docker-image@main | |
| with: | |
| docker-registry: ${{ startsWith(github.event.ref, 'refs/tags/ciflow/') && '308535385114.dkr.ecr.us-east-1.amazonaws.com' || 'docker.io' }} | |
| docker-image-name: manylinux2_28-builder | |
| custom-tag-prefix: rocm6.4 | |
| docker-build-dir: .ci/docker | |
| working-directory: pytorch | |
| - name: Pull Docker image | |
| uses: pytorch/test-infra/.github/actions/pull-docker-image@main | |
| with: | |
| docker-image: ${{ steps.calculate-docker-image.outputs.docker-image }} | |
| - name: Test Pytorch binary | |
| uses: ./pytorch/.github/actions/test-pytorch-binary | |
| env: | |
| DOCKER_IMAGE: ${{ steps.calculate-docker-image.outputs.docker-image }} | |
| - name: Teardown ROCm | |
| uses: ./.github/actions/teardown-rocm |