未完のドライバープロジェクトへの回帰
開発者のアイリーン・ユンは2026年9月12日、3年前に中断していた研究を再び取り上げ、M1チップ内のApple Neural Engineに関する回顧的なリバースエンジニアリング分析を公開した。このプロジェクトは、単にアクセラレーター上で演算を実行することから、その内部の演算、スケジューリング、メモリ、実行モデルを文書化することへと重点を移している。
ユンの分析によると、M1 Neural Engineには、Appleがこのアクセラレーターを初めて導入した畳み込みニューラルネットワーク時代の前提が反映されている。高密度な画像処理モデルでは、予測可能なパターンでデータを再利用できるため、専用ハードウェアは値を演算ユニットの近くに保持し、コストの高いメモリ移動を減らせる。Transformerの推論、特にトークンを一つずつ生成する処理では、どちらのワークロードも最終的には積和演算に大きく依存するにもかかわらず、そうしたパターンが変化する。
報告されたM1の設計には、並列動作する16個の演算コアが含まれる。各コアには16ビット浮動小数点演算用の128レーン、または8ビット整数演算用の256レーンがあり、アクセラレーター全体で2,048本の積和演算レーンを構成する。ユンは、これらの演算ユニットだけでは、ハードウェアが畳み込み、行列乗算、あるいは別のテンソル演算のどれを実行するかは決まらないと強調する。有用なワークロードを決定するのは、その周囲でのオペランドのマッピングとスケジューリングである。
データフローが明らかにする特化構造
分解調査によると、各レーンは部分結果を離れたメモリへ繰り返し送るのではなく、ローカルな32ビット・アキュムレーター内で累積和を構築する。完成した和は、その後、後処理用の活性化ブロックへ直接送られる。この構成は、入力値と中間値を予測可能な形で再利用できる高密度ワークロードに適している。
このリバースエンジニアリングでは、活性化用ハードウェアの動作も調査している。ユンは、小規模なCore MLプログラムをコンパイルし、そのハードウェア・レジスターファイルを調べることで、区分線形補間を行う33エントリーのルックアップテーブルを使用するモードを特定した。意図的に構築したインパルステーブルによる実験では、隣接するエントリー間で予想どおりの三角形状の応答が得られ、提案されたハードウェアの解釈を裏付けた。
これはAppleの文書ではなく独立した技術分析であり、明示的に暫定的とされている結論もある。その価値は、観測された挙動を、初期世代のモバイル向け機械学習アクセラレーターを形作ったアーキテクチャ上のトレードオフと結び付けている点にある。ユンによれば、Linux向けのハードウェアインターフェースを公開するだけでは、このブロックは汎用アクセラレーターにはならない。周辺アーキテクチャが、依然として特定のデータフロー上の前提に強く合わせて設計されているためだ。
この分析は、Appleがその後進んだハードウェアの方向性も文脈の中に位置付けている。ユンは、M5世代でニューラル処理リソースがGPUコアと統合されたことについて、演算機構自体は引き続き有用である一方、Transformerワークロードでは異なる周辺データフローが好まれる証拠だと解釈している。したがってM1の分解調査は、単なるドライバー実装以上のものを提供する。AppleがCNN時代の機械学習に対する想定をどのようにシリコンへ組み込み、なぜ新しいモデルによってベンダーがより柔軟な構成へ向かっているのかを記録している。



