LiME-TM: A Lightning-fast and Memory-Efficient ML Framework
for On-Device Training on MCUs

Han Wu, Shengyu Duan and Tousif

Why is On-Device Training Important?

Data Distribution Shift

  • Evolving Environment
  • Sensor Degradation
  • User Personalization

Why is On-Device Training Challenging?

Resource Constraints

  • Memory: GBs to KBs
  • Compute: GHz to MHz
  • Energy: W to mW
    

Can Vanilla TM do On-Device Training?

Vanilla TM

MNIST Dataset (60k images)

  • 100 clauses
  • 10 classes
  • 28 x 28 pixels
  • 8 bits

100 clauses x 10 classes x 28 x 28 pixels x 8 bits
= 12,544,000 Bytes (~ 12MB)

LiME-TM: Model Pruning

LiME-TM: Model Compiler

LiME-TM: Model Compression

LiME-TM: Bare-metal Support

LiME-TM: Inference Only

Thanks

  • On-Device Training: 20 KB SRAM
  • On-Device Inference: 2 KB SRAM

  Source Code