Who is this for?

This Learning Path is for ML developers who want to use the Arm ML Inference Advisor (MLIA) to evaluate whether a model is suitable for a target before moving into deployment, graph inspection, or runtime profiling.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Use the MLIA CLI to discover target profiles and backends.
  • Run compatibility and performance analysis on LiteRT, Tensor Operator Set Architecture (TOSA), and ExecuTorch artifacts.
  • Interpret MLIA JSON output, advice, Vela estimates, and Corstone whole-model NPU performance counters.
  • (Optional) Call the MLIA Python API from automation or other tools.

Prerequisites

Before starting, you will need the following:

  • Ubuntu 22.04 LTS or another compatible Linux environment
  • Python 3.10 or later
  • Git and Git Large File Storage (LFS) to download the model artifacts
  • Basic familiarity with machine learning model deployment concepts
  • Basic familiarity with command-line tools

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll use MLIA to assess model suitability for Ethos-U targets before deployment. First, you’ll install MLIA, discover target profiles and backends, and compare LiteRT and TOSA artifacts with Vela. Then, you’ll analyze packaged ExecuTorch .pte artifacts with Corstone. You’ll learn that Vela provides compiler estimates and operator breakdowns, while Corstone reports whole-model NPU counters. Optionally, you’ll automate compatibility checks with the Python API.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I confirm that Git LFS is set up before downloading the model artifacts?
Run git lfs version. If the command fails on Ubuntu, run sudo apt update, then install Git LFS and the Python development package with sudo apt install -y git-lfs python3.10-dev. Run git lfs install before you clone the repository and pull the model artifacts.
How do I verify that MLIA is installed and discover available backends and target profiles?
Activate your virtual environment with source mlia_env/bin/activate, then run mlia --help to confirm that the CLI works. To list target profiles, run mlia target list. To see available and installed backends, run mlia backend list.
Why is the FP32 LiteRT model incompatible while the INT8 model is compatible?
Ethos-U acceleration needs supported quantized integer workloads. The FP32 model lacks the needed quantization parameters, so MLIA reports accelerator_operator_percentage as 0. For the supplied INT8 model, Vela reports status as ok and accelerator_operator_percentage as 100.0 for the ethos-u85-256 profile.
How should I interpret Vela performance analysis for LiteRT and TOSA artifacts?
You get target-aware compiler estimates, including cycles, utilization, memory use, and operator-level breakdowns when available. Treat these values as estimates for NPU work rather than final latency measurements from hardware. Use the advice to identify operators that dominate estimated cycles or have low multiply-accumulate (MAC) utilization.
When should I use the MLIA Python API?
Use run_advisor() from the Python API when you want to integrate MLIA compatibility checks into a product, dashboard, workflow runner, or CI system.
Next