もちろんこれだけが秘密ではない。
さらに大きいのは、メインメモリをM1の半導体チップと同じダイの上に混載し、広帯域なバスでつないでいることだ。CPUとGPU、さらには機械学習用のコアである「Neural Engine」は、同じメインメモリを共有する。こうした仕組みを「ユニファイド・メモリ・アーキテクチャ」と(UMA)いう。UMAの特徴は、各コアが同じメモリを参照するため、「データのコピーが不要である」という点だ。
ごくシンプルに説明すると、例えば立体物を表示する場合、まずデータはメインメモリに読み込まれ、さらに表示のためにGPUが使うビデオメモリ(VRAM)へと転送され、その後の処理が行われる。表示するモデルに何か処理をしなければいけない場合、メインメモリにあるデータをCPUがさらに処理し、GPU側に再転送する。
こうしたことがあまり起きないよう、VRAMは大きい方が性能が良く、GPUとCPUをつなぐバスも広帯域である方が良い、とされてきた。
だがそれは、「CPUに対してGPUを別途外付けにする」「メモリは増設できるようスロットを用意する」という前提で設計されているからだ。そうすることで、過去との互換性維持はずっとやりやすくなるし、製品バリエーションも増やせる。
だが、その前提を全て捨てればどうなるだろう?
同一の高速なメモリをCPUとGPUが共有するUMA構造ならそれができる。メモリは増設を前提としないことで、CPU・GPUから非常に近い位置に広帯域なバスで接続しやすくなる。最初からその前提で設計すれば、データ転送などが不要になるので、その分の効率を稼げる。もちろん、UMAはそんなにシンプルなものではなく、処理中にデータが書き換えられた際のCPUとGPUの間での整合性確保など、課題がある。だが、そこにちゃんと手だてを用意していれば、CPU・GPUコアがもつ性能を最大限に生かしやすくなる。
M1はそういう構造である。「メモリが8GBか16GBしかない」「GPUの増設も前提としない」という形に特化することで、効率を突き詰めることができる。一方、拡張性と製品による性能バリエーションを失う。まさに、M1版Macそのものだ。
同じような構造は、主にゲーム専用機で採用されている。例えば、PS5もPS4に続きUMA構造を採用している。ゲーム機は増設の必要がなく、設計もメーカー側がある程度自由に行える。メモリの総量を抑えてコストを下げるにも重要だ。ゲーム機と同じように「全体をメーカーがコントロールする」からこそ、M1版Macはああいう形を採れた、といってもいいだろう。
逆に言えば、M1が「1つの形に特化した」プロセッサであるからこそ、ハイパフォーマンス向けMacをどう作るのか、という点が重要な論点になってくるのだけれど。まあそんなことはAppleも百も承知だろう。
Copyright © ITmedia, Inc. All Rights Reserved.
Special
PR