TF Lite for Cortex M7/M55

Hello guys,

I’d like to ask if there is TF Lite available for microcontrollers (aka ARM Cortex M7, ARM Cortex M55).
If not, what does not-allow to have TF-Lite even for Cortex M7, ARM Cortex M55 fast-clocked cores in GHz, and more range?
Is it possible to run TF-Lite within a bare-metal (No-OS) environment or TF-Micro is solely targeting this domain?


Thanks for explanation

Hi @Jack_Daniels, tensorflowlite library is not limiting itself to run on different M cores with os or bare metal but note that it requires quite amount of memory to run models so you could find basic memory footprint numbers in here.

Which different microcontrollers or development boards are supported out of box can be found here. Also you can likely check with your microcontroller manufacturer company(or online SDK support) itself to find out tensorflowlite related support if you don’t find in above link.

Thank you for your answer.

My understanding is that are 2 libraries - TensorFlow Lite and TensorFlow Lite for Microcontrollers - and those are separate libs and repos.

What is the difference between these libraries?
“TensorFlow Lite” has more execution units (GPU, NPU, DSP) can “TensorFlow Lite” library run on microcontrollers (HW: multicore M7 with NPU) as well?

@khanhlvg can help here

Hey Jack,

Yes! TensorFlow Lite is a version of TensorFlow that is optimized for on-device machine learning (mobile, web, python - including on Raspberry Pis, which is pretty cool). TensorFlow Lite for Microcontrollers takes that a step further by converting your models into arrays and some other nifty things so simple models can run on devices with a lot less memory. These are two separate libraries/repos that have their own dedicated purposes, so you wouldn’t normally have standard TFLite models running on microcontrollers.

That said, we do have something really cool coming down the pipeline from Coral called the Coral Dev Board Micro. This has a Coral TPU for faster inference and supports your typical TFLite models, but the board runs FreeRTOS or can use standard Arduino sketches, so you can run both TFLM and TFLite on it if that’s something that can fit your use-case. As soon as these come out, which should be pretty soon, we’ll have documentation up on getting started and using them.

Hopefully that helps, but let me know if there’s any other confusion :slight_smile: