Skip to content

Bump CMSIS-MLEK pack dependencies and prepare template/runtime structure for ExecuTorch#27

Draft
Copilot wants to merge 2 commits into
mainfrom
copilot/update-cmsis-mlek-pack
Draft

Bump CMSIS-MLEK pack dependencies and prepare template/runtime structure for ExecuTorch#27
Copilot wants to merge 2 commits into
mainfrom
copilot/update-cmsis-mlek-pack

Conversation

Copy link
Copy Markdown

Copilot AI commented May 19, 2026

This PR updates CMSIS-MLEK to current pack versions for the step-1 dependency refresh, and aligns the template/layout with upstream MLEK work by adding non-functional scaffolding for a future ExecuTorch backend while keeping TensorFlow Lite Micro as the only active runtime.

  • Dependency and tooling version refresh

    • Bumps pack pins across the solution, project, and layer files under template/audio, template/video, and template/generic.
    • Updates:
      • created-for: CMSIS-Toolbox
      • ARM::CMSIS, ARM::CMSIS-DSP, ARM::CMSIS-RTX
      • ARM::ml-embedded-eval-kit-uc-api
      • ARM::ethos-u-core-driver
      • TensorFlow Lite Micro pack set (tensorflow-lite-micro, flatbuffers, gemmlowp, kissfft, ruy)
      • BSP pins where newer 1.x releases were available
    • Keeps unchanged pins where newer releases were not confirmed and adds inline TODO markers for later bumps.
  • Pack metadata

    • Adds a new 1.1.0 entry to ARM.CMSIS-MLEK.pdsc describing:
      • updated dependency versions
      • preparation for ExecuTorch runtime support with TFLM still default
    • Advances the pack schema reference to the newer Open-CMSIS-Pack schema.
  • ExecuTorch scaffolding only

    • Adds commented placeholder runtime-pack/component blocks to the ML layers.
    • Adds commented placeholder Release-ExecuTorch build-type blocks to the solution files.
    • Adds top-of-file notes in the ML layer files to make runtime intent explicit: TFLM remains active; ExecuTorch selection is follow-up work.
    • Does not add ExecuTorch sources, models, CI, or runtime refactors.
  • Documentation updates

    • Rewords runtime support across:
      • README.md
      • overview/README.md
      • docs/overview.md
      • template READMEs
    • Documents:
      • TensorFlow Lite Micro as the current runtime
      • ExecuTorch as planned follow-up work
      • links to ExecuTorch and the Arm Ethos-U backend
    • Adds a dedicated Runtime Support section to overview/README.md.

Example of the added scaffolding:

# --- ExecuTorch runtime (future) ---
# packs:
#   - pack: executorch::executorch@^0.5.0
#   - pack: executorch::kernels-portable@^0.5.0
#   - pack: executorch::ethosu-backend@^0.5.0
# components:
#   - component: Machine Learning:Runtime:ExecuTorch
#     for-context: \.*-ExecuTorch.*

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • git.gitlab.arm.com
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)
  • www.keil.arm.com
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)
  • www.keil.com
    • Triggering command: /usr/bin/python3 python3 - (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Goal

Update the CMSIS-MLEK pack to the latest versions of all dependencies and prepare the project structure to support ExecuTorch as an inference backend alongside the existing TensorFlow Lite Micro (TFLM) runtime, aligning with the upstream ml-embedded-evaluation-kit work.

This work should be done on a feature branch and opened as a draft pull request. Implement this as step 1 (version bumps) with hooks/scaffolding for ExecuTorch support to be filled in by follow-up PRs.

Scope of this PR

1. Version bumps

Update pack version pins in all of these files:

  • template/audio/mlek_audio.csolution.yml
  • template/audio/ML/ml_layer.clayer.yml
  • template/audio/kws/*.cproject.yml (any cproject files under template/audio/kws/)
  • template/video/mlek_video.csolution.yml
  • template/video/ML/ml_layer.clayer.yml
  • template/video/*/cproject.yml files under the video templates
  • template/generic/mlek_generic.csolution.yml
  • template/generic/inference_runner/inference_runner.cproject.yml
  • any other *.cproject.yml, *.csolution.yml, or *.clayer.yml files in the repo

Apply these version bumps (use the latest available releases of each pack on https://www.keil.arm.com/packs at the time the PR is opened; the targets below are minimum versions to bump to):

Pack / setting Current pin New pin (minimum)
created-for: CMSIS-Toolbox 2.12.0 2.15.0
ARM::CMSIS ^6.2.0 ^6.3.0
ARM::CMSIS-DSP ^1.16.0 ^1.17.0
ARM::CMSIS-NN ^7.0.0 latest 7.x
ARM::CMSIS-RTX ^5.9.0 latest 5.x
ARM::ml-embedded-eval-kit-uc-api ^24.8.0 latest available (25.x preferred)
ARM::ethos-u-core-driver ^1.25.2 latest matching upstream eval kit
tensorflow::tensorflow-lite-micro ^1.25.2 latest available
tensorflow::flatbuffers ^1.25.2 latest available
tensorflow::gemmlowp ^1.25.2 latest available
tensorflow::kissfft ^1.25.2 latest available
tensorflow::ruy ^1.25.2 latest available
ARM::V2M_MPS3_SSE_300_BSP ^1.5.0 latest 1.x
ARM::V2M_MPS3_SSE_310_BSP ^1.4.0 latest 1.x
ARM::SSE_315_BSP ^1.0.0 latest 1.x
ARM::SSE_320_BSP ^1.0.0 latest 1.x

If a newer pack version isn't published yet, keep the current pin and add a # TODO: bump when X is released comment.

2. Pack metadata

In ARM.CMSIS-MLEK.pdsc:

  • Add a new <release version="1.1.0" date="YYYY-MM-DD"> entry above 1.0.0-dev describing:
    • "Updated dependencies to latest pack versions."
    • "Prepared layer structure for ExecuTorch runtime support (TFLM remains the default)."
  • Keep 1.0.0-dev entry for ongoing development.
  • Bump schemaVersion if a newer Open-CMSIS-Pack schema is available.

3. Scaffolding for ExecuTorch support (no behavior change)

Without breaking existing TFLM builds:

  • In each template/*/ML/ml_layer.clayer.yml, add commented-out placeholder pack/component entries for ExecuTorch, e.g.:
    # --- ExecuTorch runtime (future) ---
    # packs:
    #   - pack: executorch::executorch@^0.5.0
    #   - pack: executorch::kernels-portable@^0.5.0
    #   - pack: executorch::ethosu-backend@^0.5.0
    # components:
    #   - component: Machine Learning:Runtime:ExecuTorch
    #     for-context: \.*-ExecuTorch.*
  • In each template/*/mlek_*.csolution.yml, add a commented placeholder for a future runtime build-type:
    # build-types:
    #   - type: Release-ExecuTorch
    #     debug: off
    #     optimize: speed
  • Add a top-of-file comment in each updated clayer.yml noting that the layer currently uses TFLM and the structure is being prepared for ExecuTorch runtime selection in a follow-up PR.

4. Documentation updates

Update wording in:

  • README.md
  • overview/README.md
  • docs/overview.md
  • template/audio/README.md, template/video/README.md, and template/generic/README.md if it exists

Changes:

  • Replace "uses currently Neural Network Models currently in TensorFlow Lite format" with text noting that TensorFlow Lite Micro is the current runtime, and ExecuTorch runtime support is planned, linking to:
  • In overview/README.md, add a new "Runtime Support" section after "Platform Support" that lists:
    • TensorFlow Lite Micro (currently supported)
    • ExecuTorch (planned, tracked in follow-up work)
  • Add an entry in the README "Related" section for ExecuTorch.

5. Do NOT do in this PR

  • Do not add actual ExecuTorch source files, models (.pte), or refactor MainLoop.cpp / UseCaseHandler.cpp. Those are follow-up PRs.
  • Do not add new CI workflows for ExecuTorch yet.
  • Do not delete the existing TFLM components — they remain the default and only active runtime.

Acc...

This pull request was created from Copilot chat.

Agent-Logs-Url: https://github.com/Arm-Examples/cmsis-mlek/sessions/52fdbdb6-7e91-45bc-adda-efcc34bcdbbd

Co-authored-by: MatthiasHertelArm <256556182+MatthiasHertelArm@users.noreply.github.com>
Copilot AI changed the title [WIP] Update CMSIS-MLEK pack to latest dependency versions Bump CMSIS-MLEK pack dependencies and prepare template/runtime structure for ExecuTorch May 19, 2026
Copilot AI requested a review from MatthiasHertelArm May 19, 2026 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants