MLIA Ethos-U Plugin
This package contains the MLIA target plugin for Arm Ethos-U platforms and packages the Ethos-U backend integrations used by MLIA.
The package is distributed as mlia-ethos-u and contributes:
- The
ethos_utarget plugin. - The
velabackend plugin. - The Corstone backend plugin, which registers target-specific Corstone backends.
- Bundled Ethos-U target profiles and Vela configuration assets.
Table of Contents
- Overview
- Supported targets
- Backends in this package
- Installation
- Reporting bugs
- Development setup
- Common commands
- Project layout
- Documentation
- Releases
- License
- Trademarks and copyrights
Overview
mlia-ethos-u is the main MLIA plugin package for Ethos-U inference analysis.
It extends the core MLIA framework with Arm Ethos-U target knowledge, operator
analysis, bundled target profiles, and the backend integrations required for
Vela compilation and Corstone-based performance flows.
This is the package to install when you want MLIA to analyse LiteRT /
TensorFlow Lite .tflite models for Ethos-U55, Ethos-U65, or Ethos-U85 targets,
or when you want to run
the Corstone-based ExecuTorch AOT path for supported PyTorch inputs.
Supported targets
Bundled target profiles include:
ethos-u55-128ethos-u55-256ethos-u65-256ethos-u65-512ethos-u85-128ethos-u85-256ethos-u85-512ethos-u85-1024ethos-u85-2048
These profiles are shipped under src/mlia/resources/target_profiles/.
Backends in this package
Vela
The Vela backend is used for compiler-oriented analysis, compatibility checks, and Ethos-U standardized performance results based on the Vela toolchain.
Corstone
The Corstone backend supports simulation-oriented performance flows for
Corstone platforms used in Ethos-U analysis and validation. It is also the
backend path used for supported ExecuTorch .pte workloads.
Installation
Install into an environment that already contains mlia:
pip install mlia-ethos-u
If you want MLIA to accept PyTorch .pt2 inputs directly for the ExecuTorch
flow, install the matching
converter plugin as well:
pip install mlia-converters-pytorch
A typical MLIA workflow then references one of the bundled profiles, for example:
mlia check my_model.tflite --target-profile ethos-u55-256
For supported ExecuTorch AOT flows, a PyTorch-originating run can look like:
mlia check my_model.pt2 --target-profile ethos-u55-256 --performance --backend corstone-300
Direct .pt2 support depends on mlia-converters-pytorch. Corstone performance
for ExecuTorch .pte models, including converted .pt2 inputs, currently
supports only these combinations:
| Target | ExecuTorch performance backend |
|---|---|
| Ethos-U55 | corstone-300 |
| Ethos-U85 | corstone-320 |
| Ethos-U65 | Unsupported |
For Ethos-U65, --performance on a PyTorch .pt2 input is supported only
through Vela:
mlia check my_model.pt2 --target-profile ethos-u65-256 --performance --backend vela
Vela provides compiler-based performance estimates. It does not run ExecuTorch
.pte models; use the original .pt2 input for this route. Ethos-U65 .pte
performance is currently unsupported. These restrictions do not affect the
TFLite Corstone performance path. See the
backend guide for details.
The package depends on MLIA and is intended to be used as part of an MLIA
installation rather than as a standalone CLI. See pyproject.toml for the
current dependency constraint.
Reporting bugs
Report bugs by creating GitHub issues. Use the
arm/mlia issue tracker by default.
Only open an issue in
arm/mlia-ethos-u when the bug
is clearly and specifically in this plugin.
Development setup
Create a local environment with the project and all development dependencies:
uv sync --group dev
If you only need the test dependencies:
uv sync --group test
This repository currently does not use a committed lock file (uv.lock).
Common commands
Run the quick test suite used in CI:
uv run pytest -m "not slow" tests/
Run the full test suite with coverage:
uv sync --group test
uv run pytest tests/
Run the local quality checks:
uv run pre-commit run --all-files
Build the package:
uv build
Project layout
src/mlia/target/ethos_u/: target integration, advisor logic, result-owned advice, and standardized-output collection for Ethos-U.src/mlia/backend/vela/: Vela backend integration.src/mlia/backend/corstone/: Corstone backend integration.src/mlia/resources/target_profiles/: bundled Ethos-U target profiles.src/mlia/resources/vela/: bundled Vela configuration.tests/: unit, integration, and CLI coverage for targets and backends.
Documentation
Additional package documentation lives in docs/README.md.
Releases
Latest changes and release history can be found in MLIA Ethos-U releases.
License
This project is licensed under the Apache License 2.0. See the license files for details.
Trademarks and copyrights
- Arm, Arm Ethos-U, Arm Cortex-M, and Arm Corstone are registered trademarks or trademarks of Arm Limited (or its subsidiaries) in the U.S. and/or elsewhere.
- TensorFlow is a trademark of Google LLC.
- PyTorch and ExecuTorch are trademarks of The Linux Foundation.
- Linux is the registered trademark of Linus Torvalds in the U.S. and elsewhere.
- Python is a registered trademark of the PSF.
Release files for mlia-ethos-u 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mlia_ethos_u-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / mlia_ethos_u-0.1.0-py3-none-any.whl
| Download URL | mlia_ethos_u-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
883212dbecb724b274c3c681df01d91c9b368e2a69d8f903e56e5875a0de9dae
|
|
BLAKE2b-256 checksum How to use checksums |
ad185a9aa51b69bb49a78b62ff1571d4a3ec01d50ad776fb0cea8c7e3c369e6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.5
|