AI・機械学習
Apple Neural Engineから50GB/sを取り戻す
Getting 50 GB/S Back from the Apple Neural Engine (eiln.github.io)
要約
Apple M3 Neural Engine (ANE) のDRAMウェイトストリーミングにおいて、総ウェイトサイズが1MiBの整数倍になる場合に、スループットが45-60GB/sから17-19GB/sに低下するパフォーマンスの問題が発見されました。この問題は、カーネルDMAエンジンのプリフェッチリングの特定パスを回避することで、Llama 3.2 1BやQwen3-8Bモデルのトークン処理スループットを大幅に向上させることで解決されました。調査の結果、このスループット低下は、テンソル次元Dが2048の倍数になる場合に発生するメモリコントローラーの特定周波数に起因することが示唆されています。
全文翻訳
Apple M3 Neural Engine の RTL パフォーマンスの不具合により、DRAM ウェイトストリーミングのスループットが公称 45-60 GB/s から 17-19 GB/s に低下しています。
カーネル DMA エンジンのプリフェッチリングにおける問題のあるパスを回避することで、Llama 3.2 1B トークンのスループットが 10.0 トークン/秒から 24.3 トークン/秒に向上しました。