[Backend Tester] Add test flows for QNN #753
Workflow file for this run
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: nightly | |
| on: | |
| schedule: | |
| - cron: 0 2 * * * | |
| push: | |
| tags: | |
| - ciflow/nightly/* | |
| pull_request: | |
| paths: | |
| .github/workflows/nightly.yml | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}--${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }} | |
| cancel-in-progress: true | |
| jobs: | |
| update-pytorch-commit-hash: | |
| runs-on: ubuntu-latest | |
| environment: ${{ (github.event_name == 'schedule') && 'update-commit-hash' || '' }} | |
| steps: | |
| - name: update-pytorch-commit-hash | |
| uses: pytorch/test-infra/.github/actions/update-commit-hash@main | |
| if: ${{ github.event_name == 'schedule' }} | |
| with: | |
| repo-name: pytorch | |
| branch: main | |
| pin-folder: .ci/docker/ci_commit_pins | |
| test-infra-ref: main | |
| updatebot-token: ${{ secrets.UPDATEBOT_TOKEN }} | |
| pytorchbot-token: ${{ secrets.GH_PYTORCHBOT_TOKEN }} | |
| link-check: | |
| needs: update-pytorch-commit-hash | |
| uses: ./.github/workflows/_link_check.yml | |
| with: | |
| ref: ${{ github.sha }} | |
| backend-test-linux: | |
| uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@main | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flow: [qualcomm, qualcomm_16a16w, qualcomm_16a8w, qualcomm_16a4w, qualcomm_16a4w_block, qualcomm_8a8w, vulkan, xnnpack, xnnpack_static_int8_per_channel] | |
| suite: [models, operators] | |
| with: | |
| ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
| runner: linux.4xlarge.memory | |
| docker-image: ci-image:executorch-ubuntu-22.04-qnn-sdk | |
| submodules: recursive | |
| timeout: 120 | |
| upload-artifact: test-report-${{ matrix.flow }}-${{ matrix.suite }} | |
| script: | | |
| set -eux | |
| # Intentionally suppressing exit code for now. | |
| # TODO (gjcomer) Remove this when jobs are stable. | |
| EXIT_CODE=0 | |
| .ci/scripts/test_backend_linux.sh "${{ matrix.suite }}" "${{ matrix.flow }}" "${RUNNER_ARTIFACT_DIR}" || EXIT_CODE=$? | |
| echo "Test run complete with exit code $EXIT_CODE." | |
| backend-test-macos: | |
| uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
| permissions: | |
| id-token: write | |
| contents: read | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flow: [coreml, coreml_static_int8] | |
| suite: [models, operators] | |
| with: | |
| ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
| runner: macos-m1-stable | |
| python-version: 3.12 | |
| submodules: recursive | |
| timeout: 120 | |
| upload-artifact: test-report-${{ matrix.flow }}-${{ matrix.suite }} | |
| script: | | |
| set -eux | |
| # This is needed to get the prebuilt PyTorch wheel from S3 | |
| ${CONDA_RUN} --no-capture-output pip install awscli==1.37.21 | |
| EXIT_CODE=0 | |
| .ci/scripts/test_backend_macos.sh "${{ matrix.suite }}" "${{ matrix.flow }}" "${RUNNER_ARTIFACT_DIR}" || EXIT_CODE=$? | |
| echo "Test run complete with exit code $EXIT_CODE." |