Increase recursion limit in tree validation to pass mobilebert test (… #28
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: trunk | |
on: | |
push: | |
branches: | |
- main | |
- release/* | |
tags: | |
- ciflow/trunk/* | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }}-${{ github.event_name == 'schedule' }} | |
cancel-in-progress: true | |
jobs: | |
gather-models: | |
runs-on: ubuntu-22.04 | |
outputs: | |
models: ${{ steps.gather-models.outputs.models }} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'false' | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- name: Extract the list of models to test | |
id: gather-models | |
run: | | |
set -eux | |
PYTHONPATH="${PWD}" python .ci/scripts/gather_test_models.py --target-os macos --event "${GITHUB_EVENT_NAME}" | |
test-models-macos: | |
name: test-models-macos | |
uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
needs: gather-models | |
strategy: | |
matrix: ${{ fromJSON(needs.gather-models.outputs.models) }} | |
fail-fast: false | |
with: | |
runner: ${{ matrix.runner }} | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
timeout: 90 | |
script: | | |
WORKSPACE=$(pwd) | |
pushd "${WORKSPACE}/pytorch/executorch" | |
MODEL_NAME=${{ matrix.model }} | |
BUILD_TOOL=${{ matrix.build-tool }} | |
BACKEND=${{ matrix.backend }} | |
DEMO_BACKEND_DELEGATION=${{ matrix.demo_backend_delegation }} | |
# Setup MacOS dependencies as there is no Docker support on MacOS atm | |
PYTHON_EXECUTABLE=python bash .ci/scripts/setup-macos.sh "${BUILD_TOOL}" | |
# Build and test xecutorch | |
PYTHON_EXECUTABLE=python bash .ci/scripts/test.sh "${MODEL_NAME}" "${BUILD_TOOL}" "${BACKEND}" "${DEMO_BACKEND_DELEGATION}" | |
popd | |
test-custom-ops-macos: | |
name: test-custom-ops-macos | |
uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
strategy: | |
matrix: | |
include: | |
- build-tool: cmake | |
fail-fast: false | |
with: | |
runner: macos-m1-12 | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
script: | | |
WORKSPACE=$(pwd) | |
pushd "${WORKSPACE}/pytorch/executorch" | |
BUILD_TOOL=${{ matrix.build-tool }} | |
# Setup MacOS dependencies as there is no Docker support on MacOS atm | |
PYTHON_EXECUTABLE=python bash .ci/scripts/setup-macos.sh "${BUILD_TOOL}" | |
# Build and test custom ops | |
PYTHON_EXECUTABLE=python bash examples/portable/custom_ops/test_custom_ops.sh "${BUILD_TOOL}" | |
popd | |
test-selective-build-macos: | |
name: test-selective-build-macos | |
uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
strategy: | |
matrix: | |
include: | |
- build-tool: cmake | |
fail-fast: false | |
with: | |
runner: macos-m1-12 | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
script: | | |
WORKSPACE=$(pwd) | |
pushd "${WORKSPACE}/pytorch/executorch" | |
BUILD_TOOL=${{ matrix.build-tool }} | |
# Setup MacOS dependencies as there is no Docker support on MacOS atm | |
PYTHON_EXECUTABLE=python bash .ci/scripts/setup-macos.sh "${BUILD_TOOL}" | |
# Build and test selective build | |
PYTHON_EXECUTABLE=python bash examples/selective_build/test_selective_build.sh "${BUILD_TOOL}" | |
popd | |
test-demo-backend-delegation: | |
name: test-demo-backend-delegation | |
uses: pytorch/test-infra/.github/workflows/linux_job.yml@main | |
strategy: | |
matrix: | |
include: | |
- build-tool: buck2 | |
- build-tool: cmake | |
fail-fast: false | |
with: | |
runner: linux.2xlarge | |
docker-image: executorch-ubuntu-22.04-clang12 | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
script: | | |
# The generic Linux job chooses to use base env, not the one setup by the image | |
CONDA_ENV=$(conda env list --json | jq -r ".envs | .[-1]") | |
conda activate "${CONDA_ENV}" | |
BUILD_TOOL=${{ matrix.build-tool }} | |
PYTHON_EXECUTABLE=python bash .ci/scripts/setup-linux.sh "${BUILD_TOOL}" | |
# Test selective build | |
PYTHON_EXECUTABLE=python bash examples/portable/scripts/test_demo_backend_delegation.sh "${BUILD_TOOL}" | |
test-arm-backend-delegation: | |
name: test-arm-backend-delegation | |
uses: pytorch/test-infra/.github/workflows/linux_job.yml@main | |
with: | |
runner: linux.2xlarge | |
docker-image: executorch-ubuntu-22.04-arm-sdk | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
script: | | |
# The generic Linux job chooses to use base env, not the one setup by the image | |
CONDA_ENV=$(conda env list --json | jq -r ".envs | .[-1]") | |
conda activate "${CONDA_ENV}" | |
source .ci/scripts/utils.sh | |
install_flatc_from_source | |
install_executorch | |
# Test selective build | |
source /opt/arm-sdk/setup_path.sh | |
PYTHON_EXECUTABLE=python bash examples/arm/run.sh /opt/arm-sdk buck2 | |
test-coreml-delegate: | |
name: test-coreml-delegate | |
uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
with: | |
runner: macos-13-xlarge | |
submodules: 'true' | |
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} | |
timeout: 60 | |
script: | | |
WORKSPACE=$(pwd) | |
pushd "${WORKSPACE}/pytorch/executorch" | |
BUILD_TOOL=cmake | |
# Setup MacOS dependencies as there is no Docker support on MacOS atm | |
PYTHON_EXECUTABLE=python bash .ci/scripts/setup-macos.sh "${BUILD_TOOL}" | |
# Build and test coreml delegate | |
PYTHON_EXECUTABLE=python bash backends/apple/coreml/scripts/build_all.sh | |
popd |