Deploy Silero VAD on Arm Ethos-U with ExecuTorch
Who is this for?
This is an introductory topic for embedded machine learning developers who want to evaluate streaming audio inference with ExecuTorch on Arm Ethos-U.
What will you learn?
Upon completion of this Learning Path, you will be able to:
- Set up ExecuTorch and the Arm development tools for Corstone-320 and Ethos-U85.
- Export and quantize a stateful Silero voice activity detection (VAD) model as a .pte file.
- Build and run a bare-metal voice activity detection application on a Corstone-320 Fixed Virtual Platform (FVP).
- Validate simulated speech probabilities against a host-generated reference.
Prerequisites
Before starting, you will need the following:
- A Linux host using
x86_64orarm64, or an Apple silicon macOS host - Basic familiarity with PyTorch models and command-line development tools
Summary
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.
.pte model, and create a host reference. Finally, you’ll package the model and validation clip into a Cortex-M85 application, run it on the Corstone-320 FVP, and compare its speech decisions with the host reference.Frequently asked questions
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.
.pte, expected_probs.bin, and export.log files. Check that export.log reports both Vela subgraphs with no CPU operators.arm-baremetal preset, then build the install target. Use the installed ExecuTorch libraries when you build the bare-metal application.fvp.log file with one PROB line for each 512-sample frame and SEGMENT lines for consecutive speech frames. Use the provided grep commands to inspect these records.compare_vad_probs.py to compare the saved host reference with the probabilities in fvp.log. The comparison confirms the number of finite probabilities, numerical tolerance, and matching speech-or-silence decisions for each frame.fvp.log file for PROB lines before you expect merged SEGMENT lines.