diff --git a/backends/cortex_m/README.md b/backends/cortex_m/README.md index ca370cfc0d2..daa2447924c 100644 --- a/backends/cortex_m/README.md +++ b/backends/cortex_m/README.md @@ -1,7 +1,7 @@ # Cortex-M Backend > [!NOTE] -> WIP. This is a temporary/placeholder backend for Cortex-M CPUs. It is not intended to be used in production, but rather as a proof of concept. Things will change without notice. +> Beta. This backend has been validated with a set of small models (e.g. MLPerf Tiny, MobileNetV2) and provides broad operator coverage through CMSIS-NN accelerated kernels with portable-ops fallback. ## Overview diff --git a/docs/source/backends/arm-cortex-m/arm-cortex-m-overview.md b/docs/source/backends/arm-cortex-m/arm-cortex-m-overview.md index 101a5dbebef..0258d013471 100644 --- a/docs/source/backends/arm-cortex-m/arm-cortex-m-overview.md +++ b/docs/source/backends/arm-cortex-m/arm-cortex-m-overview.md @@ -1,7 +1,7 @@ # Arm Cortex-M Backend :::{note} -This backend is a work-in-progress proof of concept. It is not intended for production use, and APIs may change without notice. +This backend is in **beta**. It has been validated with a set of small models (e.g. MLPerf Tiny, MobileNetV2) and provides broad operator coverage through CMSIS-NN accelerated kernels with portable-ops fallback. ::: The Arm® Cortex®-M backend accelerates quantized model execution on Arm Cortex-M CPUs using [CMSIS-NN](https://arm-software.github.io/CMSIS-NN/latest/) optimized kernels. Unlike delegate-based backends, it operates as an operator library: quantized subgraphs are replaced with CMSIS-NN accelerated kernels during the pass-lowering stage, while unsupported operators fall back to portable fp32 kernels. diff --git a/examples/arm/cortex_m_mv2_example.ipynb b/examples/arm/cortex_m_mv2_example.ipynb index 9d4389a5e15..c2fe4342773 100644 --- a/examples/arm/cortex_m_mv2_example.ipynb +++ b/examples/arm/cortex_m_mv2_example.ipynb @@ -10,7 +10,7 @@ { "cell_type": "markdown", "metadata": {}, - "source": "# Cortex-M backend flow example - Running MobileNetV2\n\nThis guide demonstrates the full flow for running a module on Arm Cortex-M using ExecuTorch. \n**Note that this backend is currently WIP and things may change / break without notice.**\n\nBefore you begin:\n1. (In a clean virtual environment with a compatible Python version) Install executorch using `./install_executorch.sh`\n2. Install Arm cross-compilation toolchain and simulators using `examples/arm/setup.sh --i-agree-to-the-contained-eula`\n3. Add Arm cross-compilation toolchain and simulators to PATH using `source examples/arm/arm-scratch/setup_path.sh` \n4. Install the following pip packages: `pip install matplotlib datasets`\n\nWith all commands executed from the base `executorch` folder.\n\n\n\n*Some scripts in this notebook produce long output logs: Configuring the 'Customizing Notebook Layout' settings to enable 'Output:scrolling' and setting 'Output:Text Line Limit' makes this more manageable*\n" + "source": "# Cortex-M backend flow example - Running MobileNetV2\n\nThis guide demonstrates the full flow for running a module on Arm Cortex-M using ExecuTorch. \n\nBefore you begin:\n1. (In a clean virtual environment with a compatible Python version) Install executorch using `./install_executorch.sh`\n2. Install Arm cross-compilation toolchain and simulators using `examples/arm/setup.sh --i-agree-to-the-contained-eula`\n3. Add Arm cross-compilation toolchain and simulators to PATH using `source examples/arm/arm-scratch/setup_path.sh` \n4. Install the following pip packages: `pip install matplotlib datasets`\n\nWith all commands executed from the base `executorch` folder.\n\n\n\n*Some scripts in this notebook produce long output logs: Configuring the 'Customizing Notebook Layout' settings to enable 'Output:scrolling' and setting 'Output:Text Line Limit' makes this more manageable*\n" }, { "cell_type": "markdown", @@ -179,4 +179,4 @@ }, "nbformat": 4, "nbformat_minor": 4 -} +} \ No newline at end of file