Skip to Content
タイニーエムエル
book

タイニーエムエル

by Pete Warden, Daniel Situnayake
March 2025
Intermediate to advanced
504 pages
7h 53m
Japanese
O'Reilly Media, Inc.
Content preview from タイニーエムエル

第17章. モデルとバイナリーのサイズを最適化する

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

どのプラットフォームを選ぶにせよ、フラッシュストレージとRAMは非常に限られたものになるだろう。ほとんどの組込みシステムでは、フラッシュの読み取り専用ストレージは1MB未満で、多くは数十キロバイトしかない。メモリについても同様で、512KB以上のスタティックRAM(SRAM)が利用できることはめったになく、ローエンドのデバイスではこの数字は1桁台前半になる可能性がある。TensorFlow Lite for Microcontrollersは、わずか20KBのフラッシュと4KBのSRAMで動作するように設計されているが、アプリケーションを注意深く設計し、フットプリントを低く抑えるためにエンジニアリングのトレードオフを行う必要がある。この章では、メモリとストレージの要件を監視し、制御するために使用できるいくつかのアプローチについて説明する。

システムの限界を理解する

ほとんどの組み込みシステムは、プログラムやその他の読み取り専用データをフラッシュメモリにストアし、新しい実行可能ファイルがアップロードされたときにのみ書き込まれるアーキテクチャを採用している。通常は、SRAM技術を使った変更可能なメモリも用意されている。これは大型CPUのキャッシュに使われているのと同じ技術で、低消費電力で高速アクセスが可能だが、サイズに制限がある。より高度なマイクロコントローラーは、ダイナミックRAM(DRAM)のような、消費電力は大きいが拡張性のある技術を使った、第2層の変更可能なメモリーを提供することができる。

潜在的なプラットフォームが何を提供し、トレードオフが何であるかを理解する必要がある。例えば、多くのセカンダリDRAMを搭載したチップは、その柔軟性から魅力的かもしれないが、その追加メモリを有効にすることで電力予算が超過してしまうのであれば、その価値はないかもしれない。本書が注目する1mW以下の電力範囲で演算子を使用する場合、SRAM以上のものを使用することは通常不可能である。つまり、考慮すべき2つの重要なメトリックは、フラッシュの読み取り専用ストレージがどれだけ利用可能か、そしてSRAMがどれだけ利用可能かということである。これらの数値は、あなたが見ているチップの説明にリストされているはずだ。願わくば、データシートの「ハードウェアの選択」まで深く調べる必要はないだろう。

メモリ使用量を見積もる

ハードウェアの選択肢について考えがまとまったら、ソフトウェアが必要とするリソースと、その要件をコントロールするためにできるトレードオフについて理解を深める必要がある。

フラッシュの使用

通常、フラッシュに必要な容量は、完全な実行ファイルをコンパイルして、できあがったイメージのサイズを見れば、正確に判断できる。というのも、リンカが最初に生成する成果物は、デバッグシンボルやセクション情報を含む、ELFのような形式の実行ファイルの注釈付きバージョンであることが多いからだ(これについては「コードサイズの測定」で詳しく説明する)あなたが見たいのは、実際にデバイスにフラッシュされるファイルであり、多くの場合、objcopy のようなツールによって生成される。必要なフラッシュ・メモリの量を測るための最も簡単な式は、以下の要素の合計である:

オペレーティングシステムのサイズ

何らかのリアルタイム・オペレーティング・システム(RTOS)を使っている場合、実行ファイルにそのコードを格納するスペースが必要になる。フットプリントを見積もる最も簡単な方法は、必要な機能を有効にしたサンプル「hello ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

認定倫理的ハッカー(CEH)勉強ガイド

認定倫理的ハッカー(CEH)勉強ガイド

Matt Walker
実践者向けの説明可能なAI

実践者向けの説明可能なAI

Michael Munn, David Pitman
ソフトウェア工学の基礎

ソフトウェア工学の基礎

Nathaniel Schutta, Dan Vega
エッジのAI

エッジのAI

Daniel Situnayake, Jenny Plunkett

Publisher Resources

ISBN: 9798341627000