Repository navigation
Expand file tree
/
Copy pathcmsis-executorch.csolution.yml
More file actions
68 lines (63 loc) · 2.43 KB
/
Copy pathcmsis-executorch.csolution.yml
File metadata and controls
68 lines (63 loc) · 2.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# Copyright 2026 Arm Limited and/or its affiliates.
# SPDX-License-Identifier: Apache-2.0
#
# A template for ExecuTorch applications, initially targeting an Ethos-U85 on
# the Corstone-320 (SSE-320) FVP.
# Three steps build it:
#
# cbuild setup cmsis-executorch.csolution.yml --active SSE-320-U85
# python create_ai_layer.py cmsis-executorch.cbuild-mlops.yml
# cbuild cmsis-executorch.csolution.yml --active SSE-320-U85
#
# See CMSIS-Toolbox MLOps information:
# https://open-cmsis-pack.github.io/cmsis-toolbox/build-overview/#mlops-information
# `cbuild setup` exports it for create_ai_layer.py to generate the AI layer.
solution:
created-for: CMSIS-Toolbox@2.15.0
cdefault:
compiler: AC6
packs:
# The PyTorch::ExecuTorch pack version must match the ExecuTorch Python
# exporter in requirements.txt because its runtime consumes the generated .pte.
- pack: PyTorch::ExecuTorch@1.5.1
- pack: ARM::Cortex_DFP
target-types:
# Corstone-320 with an Ethos-U85 NPU, simulated on the Arm FVP.
- type: SSE-320-U85
board: SSE-320
device: SSE-320-FVP
variables:
- Board-Layer: $SolutionDir()$/board/Corstone-320/Board-U85.clayer.yml
- AI-Layer: $SolutionDir()$/ai_layer/ai_layer.clayer.yml
target-set:
- set:
images:
- project-context: cmsis-executorch.Debug
debugger:
name: Arm-FVP
# On macOS use .vscode/fvp.sh and copy launch.json.mac to launch.json.
# See: https://github.com/Arm-Examples/FVPs-on-Mac/tree/main/skills/fvp-debug-setup
model: FVP_Corstone_SSE-320
config-file: board/Corstone-320/fvp_config.txt
args: "--simlimit 60"
build-types:
- type: Debug
debug: on
optimize: debug
projects:
- project: ./cmsis-executorch.cproject.yml
# Target and model settings consumed by create_ai_layer.py.
mlops:
description: TinyCNN int8 image classifier for Ethos-U85
npu:
type: Ethos-U85 # explicit: the SSE-320 device pack declares no NPU
vela:
system: Ethos_U85_SYS_DRAM_Mid # system-config from the Vela config
memory: Shared_Sram # memory-mode from the Vela config
model:
clayer: $AI-Layer$
name: TinyCNN
# Model parameters for create_ai_layer.py: the NHWC input shape and the
# number of samples the quantizer is calibrated with.
input-shape: 1x16x16x3
calibration-samples: 2