Skip to content

Commit 41892be

Browse files
Arm backend: Make upstream testing more target specific (#15920)
This patch splits up our upstream testing such that only relevant items are installed and only required things are tested upstream. It removes any duplicate testing and makes the upstream testing structure more transparent and readable. Change-Id: I14cf329eed03d9859aef97204a9f12185b9533a2 cc @freddan80 @per @zingo @oscarandersson8218 @digantdesai --------- Signed-off-by: Michiel Olieslagers <michiel.olieslagers@arm.com> Co-authored-by: Zingo Andersen <zingo.andersen@arm.com>
1 parent 3090486 commit 41892be

6 files changed

Lines changed: 197 additions & 239 deletions

File tree

.github/workflows/pull.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -490,17 +490,19 @@ jobs:
490490
build-tool: buck2
491491
docker-image: ci-image:executorch-ubuntu-22.04-clang12
492492

493-
unittest-arm-backend-with-no-fvp:
494-
name: unittest-arm-backend-with-no-fvp
493+
unittest-arm-backend-with-no-deps:
494+
name: unittest-arm-backend-with-no-deps
495495
uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@main
496496
permissions:
497497
id-token: write
498498
contents: read
499499
strategy:
500500
matrix:
501501
include:
502-
- test_arm_baremetal: test_pytest_ops
503-
- test_arm_baremetal: test_pytest_models
502+
- test_arm_baremetal: test_pytest_ops_no_target
503+
- test_arm_baremetal: test_pytest_ops_tosa
504+
- test_arm_baremetal: test_pytest_models_tosa
505+
- test_arm_baremetal: test_run_tosa
504506
fail-fast: false
505507
with:
506508
runner: linux.2xlarge
@@ -516,7 +518,7 @@ jobs:
516518
source .ci/scripts/utils.sh
517519
install_executorch "--use-pt-pinned-commit"
518520
519-
.ci/scripts/setup-arm-baremetal-tools.sh
521+
.ci/scripts/setup-arm-baremetal-tools.sh --disable-ethos-u-deps
520522
521523
ARM_TEST=${{ matrix.test_arm_baremetal }}
522524

.github/workflows/trunk.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -273,21 +273,21 @@ jobs:
273273
# Test selective build
274274
PYTHON_EXECUTABLE=python bash examples/portable/scripts/test_demo_backend_delegation.sh "${BUILD_TOOL}"
275275
276-
test-arm-backend:
277-
name: test-arm-backend
276+
test-arm-backend-ethos-u:
277+
name: test-arm-backend-ethos-u
278278
uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@main
279279
permissions:
280280
id-token: write
281281
contents: read
282282
strategy:
283283
matrix:
284284
include:
285-
- test_arm_baremetal: test_pytest_ops_ethosu_fvp
286-
- test_arm_baremetal: test_pytest_models_ethosu_fvp
287-
- test_arm_baremetal: test_run_ethosu_fvp
288-
- test_arm_baremetal: test_models_tosa
289-
- test_arm_baremetal: test_models_ethos-u55
290-
- test_arm_baremetal: test_models_ethos-u85
285+
- test_arm_baremetal: test_pytest_ops_ethos_u55
286+
- test_arm_baremetal: test_pytest_models_ethos_u55
287+
- test_arm_baremetal: test_run_ethos_u55
288+
- test_arm_baremetal: test_pytest_ops_ethos_u85
289+
- test_arm_baremetal: test_pytest_models_ethos_u85
290+
- test_arm_baremetal: test_run_ethos_u85
291291
- test_arm_baremetal: test_smaller_stories_llama
292292
- test_arm_baremetal: test_memory_allocation
293293
- test_arm_baremetal: test_model_smollm2-135M

backends/arm/README.md

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,24 @@ These scripts also install the necessary dependencies to run the tests.
110110
Below is an overview of some of the testing options this script provides:
111111

112112
| Command | Description |
113-
| ---------------------------------------------- | -------------------------------------------- |
114-
| `test_arm_baremetal.sh test_pytest` | Runs all unit tests. |
115-
| `test_arm_baremetal.sh test_pytest_ethosu_fvp` | Same as `test_pytest` but uses Corstone FVP. |
116-
| `test_arm_baremetal.sh test_run_ethosu_fvp` | Runs some models with Corstone FVP. |
117-
| `test_arm_baremetal.sh test_full_ethosu_fvp` | Runs E2E model tests on Corstone FVP. |
118-
| `test_arm_baremetal.sh test_pytest_vkml` | Runs all unit tests with Vulkan ML. |
119-
| `test_arm_baremetal.sh test_full_vkml` | Run E2E models test with Vulkan ML. |
113+
| ---------------------------------------------------- | ------------------------------------------------------------ |
114+
| `test_arm_baremetal.sh test_pytest_ops_no_target` | Runs operator unit tests for non-target specific use-cases. |
115+
| `test_arm_baremetal.sh test_pytest_models_no_target` | Runs model unit tests for non-target specific use-cases. |
116+
| `test_arm_baremetal.sh test_pytest_ops_tosa` | Runs operator unit tests for TOSA specific use-cases. |
117+
| `test_arm_baremetal.sh test_pytest_models_tosa` | Runs model unit tests for TOSA specific use-cases. |
118+
| `test_arm_baremetal.sh test_run_tosa` | Runs end-to-end unit tests for TOSA specific use-cases. |
119+
| `test_arm_baremetal.sh test_pytest_ops_ethos_u55` | Runs operator unit tests for Ethos-U55 specific use-cases. |
120+
| `test_arm_baremetal.sh test_pytest_models_ethos_u55` | Runs model unit tests for Ethos-U55 specific use-cases. |
121+
| `test_arm_baremetal.sh test_run_ethos_u55` | Runs end-to-end unit tests for Ethos-U55 specific use-cases. |
122+
| `test_arm_baremetal.sh test_pytest_ops_ethos_u85` | Runs operator unit tests for Ethos-U85 specific use-cases. |
123+
| `test_arm_baremetal.sh test_pytest_models_ethos_u85` | Runs model unit tests for Ethos-U85 specific use-cases. |
124+
| `test_arm_baremetal.sh test_run_ethos_u85` | Runs end-to-end unit tests for Ethos-U85 specific use-cases. |
125+
| `test_arm_baremetal.sh test_pytest_ops_vkml` | Runs operator unit tests for VGF specific use-cases. |
126+
| `test_arm_baremetal.sh test_pytest_models_vkml` | Runs model unit tests for VGF specific use-cases. |
127+
| `test_arm_baremetal.sh test_run_vkml` | Runs end-to-end unit tests for VGF specific use-cases. |
128+
| `test_arm_baremetal.sh test_model_smollm2-135M` | Runs some models with Corstone FVP. |
129+
| `test_arm_baremetal.sh test_smaller_stories_llama` | Runs E2E model tests on Corstone FVP. |
130+
| `test_arm_baremetal.sh test_memory_allocation` | Runs memory allocation tests for Ethos-U specific targets |
120131

121132
For more information, please refer to the `backends/arm/test/test_arm_baremetal.sh` script.
122133

0 commit comments

Comments
 (0)