vMCU: Coordinated Memory Management and Kernel Optimization for DNN Inference on MCUs
IoT devices based on microcontroller units (MCU) provide ultra-low power consumption and ubiquitous computation for near-sensor deep learning models (DNN). However, the memory of MCU is usually 2-3 orders of magnitude smaller than mobile devices, which makes it challenging to map DNNs onto MCUs. Pre...
Gespeichert in:
Hauptverfasser: | , , , , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | IoT devices based on microcontroller units (MCU) provide ultra-low power
consumption and ubiquitous computation for near-sensor deep learning models
(DNN). However, the memory of MCU is usually 2-3 orders of magnitude smaller
than mobile devices, which makes it challenging to map DNNs onto MCUs. Previous
work separates memory management and kernel implementation for MCU and relies
on coarse-grained memory management techniques such as inplace update to reduce
memory consumption.
In this paper, we propose to coordinate memory management and kernel
optimization for DNN inference on MCUs to enable fine-grained memory
management. The key idea is to virtualize the limited memory of MCU as a large
memory pool. Each kernel divides the memory pool into kernel-specific segments
and handles segment load and store while computing DNN layers. Memory
consumption can be reduced because using the fine-grained segment-level memory
control, we can overlap the memory footprint of different tensors without the
need to materialize them at the same time. Following this idea, we implement
\ours{} for DNN inference on MCU. Evaluation for single layers on ARM Cortex-M4
and Cortex-M7 processors shows that \ours{} can reduce from $12.0\%$ to
$49.5\%$ RAM usage and from $20.6\%$ to $53.0\%$ energy consumption compared to
state-of-the-art work. For full DNN evaluation, \ours{} can reduce the memory
bottleneck by $61.5\%$, enabling more models to be deployed on low-end MCUs. |
---|---|
DOI: | 10.48550/arxiv.2406.06542 |