論文の概要: vMCU: Coordinated Memory Management and Kernel Optimization for DNN Inference on MCUs
- arxiv url: http://arxiv.org/abs/2406.06542v1
- Date: Wed, 1 May 2024 16:24:53 GMT
- ステータス: 処理完了
- システム内更新日: 2024-07-01 08:00:19.030870
- Title: vMCU: Coordinated Memory Management and Kernel Optimization for DNN Inference on MCUs
- Title(参考訳): vMCU:MCU上のDNN推論のための協調メモリ管理とカーネル最適化
- Authors: Size Zheng, Renze Chen, Meng Li, Zihao Ye, Luis Ceze, Yun Liang,
- Abstract要約: マイクロコントローラ(MCU)に基づくIoTデバイスは、ニアセンサー深層学習モデル(DNN)のための超低消費電力およびユビキタス計算を提供する
以前の作業では、MCUのメモリ管理とカーネル実装を分離し、メモリ消費を減らすためにインプレース更新のような粗い粒度のメモリ管理技術に依存していた。
本稿では,MCU上でのDNN推論におけるメモリ管理とカーネル最適化のコーディネートを提案し,メモリ管理の微粒化を実現する。
- 参考スコア(独自算出の注目度): 5.618668696519569
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: 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.
- Abstract(参考訳): マイクロコントローラユニット(MCU)に基づくIoTデバイスは、ニアセンサー深層学習モデル(DNN)のための超低消費電力とユビキタスな計算を提供する。
しかし、MCUのメモリは通常、モバイルデバイスよりも2~3桁小さいため、DNNをMCUにマップすることは困難である。
以前の作業では、MCUのメモリ管理とカーネル実装を分離し、メモリ消費を減らすためにインプレース更新のような粗い粒度のメモリ管理技術に依存していた。
本稿では,MCU上でのDNN推論におけるメモリ管理とカーネル最適化のコーディネートを提案し,メモリ管理の微粒化を実現する。
鍵となる考え方は、MCUの限られたメモリを大きなメモリプールとして仮想化することである。
各カーネルはメモリプールをカーネル固有のセグメントに分割し、DNN層を計算しながらセグメントのロードとストアを処理する。
粒度の細かいメモリ制御を使用することで、異なるテンソルのメモリフットプリントを同時に実現することなく重畳することができるため、メモリ消費量を削減できる。
このアイデアに従うと、MCU 上で DNN 推論のために \ours{} を実装します。
ARM Cortex-M4 および Cortex-M7 プロセッサ上の単一層の評価では、 \ours{} は、最先端の作業と比較して、$12.0\% から$49.5\% まで、そして$20.6\% から$53.0\% まで削減可能である。
DNNの完全な評価のために、 \ours{} は 61.5\%$ のメモリボトルネックを減らし、ローエンドの MCU により多くのモデルをデプロイできる。
関連論文リスト
- vTensor: Flexible Virtual Tensor Management for Efficient LLM Serving [53.972175896814505]
大規模言語モデル(LLM)は様々なドメインで広く使われ、数百万の日次要求を処理する。
大規模言語モデル(LLM)は様々なドメインで広く使われ、数百万の日次要求を処理する。
論文 参考訳(メタデータ) (2024-07-22T14:37:58Z) - MCUFormer: Deploying Vision Transformers on Microcontrollers with
Limited Memory [76.02294791513552]
我々はMCUFormerと呼ばれるハードウェア・アルゴリズムの協調最適化手法を提案し、メモリが極端に制限されたマイクロコントローラにビジョントランスフォーマーを配置する。
MCUFormerは320KBのメモリを持つ画像分類のためのImageNet上で73.62%のTop-1精度を実現している。
論文 参考訳(メタデータ) (2023-10-25T18:00:26Z) - Pex: Memory-efficient Microcontroller Deep Learning through Partial
Execution [11.336229510791481]
マイクロコントローラ深層学習のための新しい実行パラダイムについて論じる。
ニューラルネットワークの実行を変更して、メモリの完全なバッファーを作らないようにする。
これは演算子のプロパティを利用することで実現され、一度にインプット/アウトプットのごく一部を消費/生産することができる。
論文 参考訳(メタデータ) (2022-11-30T18:47:30Z) - MCUNetV2: Memory-Efficient Patch-based Inference for Tiny Deep Learning [72.80896338009579]
メモリボトルネックは畳み込みニューラルネットワーク(CNN)の設計における不均衡なメモリ分布に起因する。
本稿では,ピークメモリを大幅に削減するパッチ・バイ・パッチ・推論スケジューリングを提案する。
ニューラルアーキテクチャサーチによるプロセスを自動化し、ニューラルアーキテクチャと推論スケジューリングを共同で最適化し、MCUNetV2に導いた。
論文 参考訳(メタデータ) (2021-10-28T17:58:45Z) - DistGNN: Scalable Distributed Training for Large-Scale Graph Neural
Networks [58.48833325238537]
大規模グラフの構造を学ぶためにGNN(Graph Neural Networks)のフルバッチトレーニングは、実現可能な数百の計算ノードにスケールする必要がある重要な問題です。
本稿では,CPUクラスタ上でのフルバッチトレーニングのためのDGL(Deep Graph Library)を最適化したGNNについて述べる。
4つの一般的なGNNベンチマークデータセットの結果は、1つのCPUソケットを使用して最大3.7倍のスピードアップ、128のCPUソケットを使用して最大97倍のスピードアップを示す。
論文 参考訳(メタデータ) (2021-04-14T08:46:35Z) - DORY: Automatic End-to-End Deployment of Real-World DNNs on Low-Cost IoT
MCUs [6.403349961091506]
低コストのMCUベースのエンドノードはオンチップメモリが限られており、キャッシュをスクラッチパッドで置き換えることが多い。
DORYは、通常1MB以下のオンチップメモリを持つ低価格のMCUにデプロイする自動ツールである。
論文 参考訳(メタデータ) (2020-08-17T07:30:54Z) - Leveraging Automated Mixed-Low-Precision Quantization for tiny edge
microcontrollers [76.30674794049293]
本稿では、HAQフレームワークに基づく自動混合精度量子化フローを提案するが、MCUデバイスのメモリおよび計算特性に特化している。
具体的には、強化学習エージェントは、個々の重みとアクティベーションテンソルの2, 4, 8ビットのうち、最高の均一量子化レベルを探索する。
重量のみの量子化のために2MBに制限されたMCUクラスのメモリが与えられた場合、混合精度エンジンによって生成された圧縮されたモデルは、最先端のソリューションと同じくらい正確である。
論文 参考訳(メタデータ) (2020-08-12T06:09:58Z) - MCUNet: Tiny Deep Learning on IoT Devices [62.752899523628066]
効率的なニューラルネットワーク(TinyNAS)と軽量推論エンジン(TinyEngine)を共同で設計するフレームワークを提案する。
TinyNASは、まず検索空間を最適化してリソース制約に適合させ、次に最適化された検索空間におけるネットワークアーキテクチャを専門化する、2段階のニューラルネットワーク検索アプローチを採用している。
TinyEngineは、階層的に最適化するのではなく、全体的なネットワークトポロジに従ってメモリスケジューリングを適応し、メモリ使用量を4.8倍削減する。
論文 参考訳(メタデータ) (2020-07-20T17:59:01Z) - Efficient Neural Network Deployment for Microcontroller [0.0]
本稿では,マイクロコントローラのための畳み込みニューラルネットワークの展開を探索し,一般化する。
メモリの節約と性能は、ARM Cortex-M CPU用に開発されたCMSIS-NNフレームワークと比較される。
最終的な目的は、トレーニングされたネットワーク重みを持つPyTorchモデルを消費するツールを開発することであり、低メモリ(キロバイトレベル)と限られた計算能力を持つマイクロコントローラのためにC/C++で最適化された推論エンジンとなる。
論文 参考訳(メタデータ) (2020-07-02T19:21:05Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。