メモリーたっぷりのMac Miniと普通のAirの比較です。M2とM4で処理速度はいくらかは違いますが、それよりもメモリーサイズが重要であることを実際に確認してみた記録です。テストに使用したのはMacBook Air M2 16GBモデルとMac Mini M4 32GBモデルです。Python関連のバージョンは少し異なりますが、スクリプトは同じで画像認識モデルの作成はUltralytics YOLOv10を使いました。
画像認識モデルの生成で重要なのはVRAMサイズです。より重いモデルの生成には、より大きなVRAMが必要となります。Apple Siliconは単一のメモリーの一部をGPUが使用するVRAMとして必要に応じて割り当てるので、柔軟な対応が可能です。
テスト用に用意したのはイメージファイルを57個でラベル数は2です。これに対しYOLOv10の異なるモデルで作成を行いました。epochは20です。
YOLOv10モデル名 | Mac Miniでの処理時間 | MacBook Air |
---|---|---|
YOLOv10n | 2分14.55秒 | 2分58.25秒 |
YOLOv10s | 3分7.91秒 | 4分35.2秒 |
YOLOv10m | 5分19.98秒 | 失敗 |
YOLOv10b | 7分57.4秒 | 失敗 |
YOLOv10l | 44分30.05秒 | 失敗 |
YOLOv10x | 113分2.03秒 | 失敗 |
– M2よりM4は少し速い。
– 16GBのMacBook Airでは軽量モデルであるYOLOv10nとYOLOV10sしか生成できなかった。
– 最重量モデルYOLOv10xでは32GBのほとんどがVRAMとして使われていた。
– 実際のモデル生成ではepochs=200以上を指定するので重いモデルのYOLOv10lとYOLOv10xの生成は実用的とは言えない。
YOLOv10bまではMac Miniでモデル生成が出来るのは大きな収穫です。それより重いモデルの生成はやはりGoogle Colabを使用するしかありません。それも無料で使えるGPUではVRAMサイズが足りずYOLOv10lとYOLOv10xの生成には有料(安いです)のGPU A100などを使用します。その重いモデルもテスト的にMac Miniで生成できるのはとてもありがたいことです。
[ おまけ ]
動画ファイルに対する画像認識の速度テストも行いました。使用した動画は720×480 60FPSのものです。モデルはYOLOv10sを使用しています。自前のスクリプトで計算したところ、MacBook Airではばらつきがありますが18FPSから20FPSくらいでした。Mac Miniは少しだけ速く22FPSから23FPSでした。どちらも実時間にはだいぶ足りない状態でした。
no comment untill now