Skip to content
5 changes: 3 additions & 2 deletions .ci/scripts/test_cortex_m_e2e.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,14 @@
set -eu

MODEL=$1
TARGET=${2:-cortex-m55}
script_dir=$(realpath "$(dirname "${BASH_SOURCE[0]}")")
et_root_dir=$(realpath "${script_dir}/../..")

# Quantization is the default for the cortex-m55 target; run.sh's
# Quantization is the default for cortex-m targets; run.sh's
# arg parser only recognizes --no_quantize, so we omit any explicit flag.
export ARM_FVP_INSTALL_I_AGREE_TO_THE_CONTAINED_EULA=True
bash "${et_root_dir}/examples/arm/run.sh" \
--model_name="${MODEL}" \
--target=cortex-m55 \
--target="${TARGET}" \
--bundleio
10 changes: 8 additions & 2 deletions .github/workflows/_test_cortex_m_e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@ on:
description: 'JSON array of model names to run on the Corstone-300 FVP, e.g. ["mv2", "mv3"]'
required: true
type: string
targets:
description: 'JSON array of cortex-m target CPUs to build the runner for, e.g. ["cortex-m55", "cortex-m0plus"]'
required: false
type: string
default: '["cortex-m55"]'
timeout:
description: 'Per-matrix-entry timeout in minutes'
required: false
Expand All @@ -23,9 +28,10 @@ jobs:
strategy:
matrix:
model: ${{ fromJSON(inputs.models) }}
target: ${{ fromJSON(inputs.targets) }}
fail-fast: false
with:
job-name: ${{ matrix.model }}
job-name: ${{ matrix.model }}-${{ matrix.target }}
runner: linux.2xlarge.memory
docker-image: ci-image:executorch-ubuntu-22.04-arm-sdk
submodules: 'recursive'
Expand All @@ -44,4 +50,4 @@ jobs:
source examples/arm/arm-scratch/setup_path.sh

# Export and run model on FVP (run.sh internally builds the test runner).
bash .ci/scripts/test_cortex_m_e2e.sh ${{ matrix.model }}
bash .ci/scripts/test_cortex_m_e2e.sh "${{ matrix.model }}" "${{ matrix.target }}"
1 change: 1 addition & 0 deletions .github/workflows/trunk.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1075,3 +1075,4 @@ jobs:
uses: ./.github/workflows/_test_cortex_m_e2e.yml
with:
models: '["mv2", "mv3"]'
targets: '["cortex-m55", "cortex-m0plus"]'
Loading