LarrabeeとXring

Intelヒルズボロが開発するCPUアーキテクチャの方向性

●CPUコアをスケーラブルに増やすことも可能

 こうしたアーキテクチャ上の工夫によって、Larrabeeでは16コアまでのCPUコアを1ペアの双方向リングに接続できるという。SIGGRAPHの論文では16コアまでは1リングだが、それ以上の場合の拡張も可能だとされていた。

 Carmean氏によると、16コア以上にはエクストラリング「Xring」を使うという。これは、複数のリング間を結ぶクロスオーバーポイント を加えることで、1ペア以上のリング構成をフレキシブルに可能にするものだ。「コア数の構成をよりスケーラブルにすることが可能で、Larrabeeアー キテクチャをもっとモジュラーにできる。また、物理的な配置の自由度も高める」とCarmean氏は言う。下の図では3つのリングが相互接続されること で、16コア以上のコアを構成している。

拡張性を持たせたLarrabeeのリングバス

未来に強く過去に弱いIntelのLarrabee

 また、Larrabeeの内部メモリは、PC&サーバー系CPUと同様にキャッシュメモリだが、HPCのような世界では、むしろ明示的に制御できる非キャッシュ型のスクラッチパッドのようなメモリが歓迎される場合も多い。再利用されないデータばかりだと、キャッシュは意味をなさないし、自分でデータを管理することでキャッシュミスをゼロにできるからだ。

 こうして見ると、Larrabeeの利点は、従来型のCPUのプログラミングに慣れていて、なおかつ高スループットCPUを使いたいという領域にあることがわかってくる。この利点をフルに生かすには、本来はPC&サーバー向けCPUと、命令セットの実装を同期させた方がいい。つまり、 Larrabee投入と前後して、Larrabeeと互換性のある命令セットあるいはLarrabee CPUコアそのものをPC&サーバー向けCPUにも実装すれば、話は簡単だ。ターゲットとするソフトウェア市場が動き始めて、Larrabeeという製品も浸透しやすい。

 しかし、現実にはIntelはそれができない。以前の記事で書いたように、その理由はIntel内部の2つのCPU開発センター間の競合があるためかもしれない。いずれにせよ、PC&サーバーCPUと、命令セット拡張のズレが出てしまうことも、Larrabeeにとって障害だろう。