Deploying a Convolutional Neural Network on Cortex-M with latest CMSIS-NN(v4.0.0 and later)

For Deploying a Convolutional Neural Network on Cortex-M with latest CMSIS-NN(4.0.0 or later), is there any example?

Parents
  • The previous CIFAR-10 project was a legacy CMSIS-5/CMSIS-NN example and has not been ported or maintained as a standalone application for CMSIS-NN v4+.

    You can deploy without TFLM, but CMSIS-NN is a kernel library rather than a complete inference runtime. You must provide the graph execution, tensor buffers, quantization parameters (including per-channel scales/shifts where applicable), scratch-buffer allocation, and model-to-C conversion yourself. Use the current int8 APIs such as arm_convolve_wrapper_s8, pooling, fully connected, and softmax functions; the CMSIS-NN unit tests are the closest maintained call-level examples.

    Arm’s supported/recommended deployment path is TFLM with the CMSIS-NN kernels. The obvious alternative if you don't want TFLM is executorch (cortex-m backend), if that is some help.

    (FYI - the CMSIS-NN team's main response flow is through issues on the github repo)

Reply
  • The previous CIFAR-10 project was a legacy CMSIS-5/CMSIS-NN example and has not been ported or maintained as a standalone application for CMSIS-NN v4+.

    You can deploy without TFLM, but CMSIS-NN is a kernel library rather than a complete inference runtime. You must provide the graph execution, tensor buffers, quantization parameters (including per-channel scales/shifts where applicable), scratch-buffer allocation, and model-to-C conversion yourself. Use the current int8 APIs such as arm_convolve_wrapper_s8, pooling, fully connected, and softmax functions; the CMSIS-NN unit tests are the closest maintained call-level examples.

    Arm’s supported/recommended deployment path is TFLM with the CMSIS-NN kernels. The obvious alternative if you don't want TFLM is executorch (cortex-m backend), if that is some help.

    (FYI - the CMSIS-NN team's main response flow is through issues on the github repo)

Children
No data