2012年以降のプロセッサはこうなる!

ここ20-30年あまりのCPUとGPUの進化の流れ踏まえた上でTIM SWEENEY氏が見据えた「傾向」とは、

  • CPUはシンプルコア化してメニーコアへと向かう
  • もともとメニーコア的だったGPUは究極のプログラマビリティの獲得に向かう

というものになる。

TIM SWEENEY氏は「この流れを踏まえると2012~2020年にはCPUとGPUのアーキテクチャは同一のものに収束していくはずだ」と予測する。

これは大胆に思えるが、実際にそう予測しているアナリストは多い。CPUとGPUの統合についてNVIDIAは否定的な立場をとっているが、AMDとIntelはこの未来予想図を具現化する方向に動いており、Intelが示した第一世代の解答がLarrabeeなのだ。

これを踏まえ、TIM SWEENEY氏は、「2012~2020年のPCや家庭用ゲーム機ではCPUとGPUの2つを搭載せず、統合されたCPU的GPU(あるいはGPU的CPU)が1個だけ搭載されたシステムになるだろう」と述べた。

これも、最近ではよく言われてきていることだ。

「2012~2020年にはCPUとGPUのアーキテクチャは同一のものに収束していくはずだ」(TIM SWEENEY氏)

GPUはプログラマビリティが向上し、3Dグラフィックスだけでなく複雑なアルゴリズムを大量のデータに適用するデータ並列コンピューティング(GPGPU)がこなせるようになっているが、処理されたデータを取りまとめて次の処理に進める制御系はどうしてもCPUの仕事となり、その際にはGPU配下のメモリとCPU配下のメモリとのやりとりが頻発する。同一情報が複数箇所に格納されるという冗長性の観点から無駄であるし、その転送所要時間も無駄だ。

帯域が十分確保できるという前提条件付きであれば、CPUとGPUがの両者のメモリシステムはハードウェア的に統合された方がスマートだといえる。こうしたメモリシステムの統合はいわゆるUMA(Unified Memory Architecture)構造と呼ばれるものであり、このUMAデザインが進むともいわれている。このUMAを採用した最新機器には身近なものとしてはXbox 360がある。Xbox360のCPUは、GPUと、そのGPU配下のメモリシステムを共有しており、レイテンシの大きさよりもピーク帯域の方を重視した設計を採択している。2012年以降のPCやゲーム機ではXbox 360のアーキテクチャからさらに進み、CPUとGPUが1つに融合し、さらに同じメモリシステムを活用するようなデザインとなる可能性が高い。

「このCPUとGPUが統合された時代2012~2020年では、単にグラフィックスハードウェアと言った場合はディスプレイ出力デバイスを指すようになっているはずだ」とTIM SWEENEY氏は本気とも冗談とも取れないようなユニークな言い回しで未来を予見した。

CPUとGPUは統合される!

CPUとGPUが統合された時代、グラフィックスハードウェアは「ただのディスプレイ出力デバイス」を指すことになる!?

TIM SWEENEY氏は、その時代のCPU&GPU統合型プロセッサの性能指標は駆動周波数、コア数、ベクトル演算幅になるとしている。

CPUでは動作クロック数×コア数が1つの性能指標になりつつあり、GPUの世界ではこれにベクトル演算性能を掛け合わせて、テラFLOPSのオーダーの性能数値競争が始まりつつあるわけだが、2012年以降のCPU & GPU統合型プロセッサでは、どちらかといえばGPU的なテラFLOPS演算指標が一般化するとTIM SWEENEY氏は見ているのだ。

CPU & GPU統合型プロセッサではCPU的なスカラコードとGPU的なベクトルコード(SIMDやMIMD的なものになる?)が透過的に実行される。実際の実行ユニットの実装レベルではどのような設計になるかはわからない。現状でもAMD Radeon系はSIMD型実行ユニットを採用しているし、NVIDIA GeForce系ではスカラ分解型実行ユニットを採用している。

そして、TIM SWEENEY氏は、いくつかの機能については固定機能のハードウェアが実装されるともいう。氏は例としてテクスチャサンプリングユニットとラスタライゼーションユニットを挙げた。

テクスチャサンプリングの処理は、テクスチャアドレスの計算、複数MIPMAPへの読み出し、取り出した値に対しての加重平均演算(フィルタリング処理)など、比較的定番でそれでいて高負荷な演算が反復的に実行されるので、ソフトウェアではなく、ハードウェアの方が向いているという判断から、そうした予測をしたと思われる。実際、Larrabeeでは、テクスチャユニットをハードウェア実装していることが明かされている。ラスタライゼーションも定番で比較的高負荷な処理系だが、Larrabeeではソフトウェア実装を採択した。TIM SWEENEY氏のスライドで「?」が付いているのはそうした理由からだろう。ここでは詳しく述べないが、Intelはラスタライゼーション処理を従来とは違う非線形なアルゴリズムなどをソフトウェア実装すればデプスシャドウ技法の影生成におけるジャギーを低減できるといった主張をしており、この選択の正当性を訴求している。

2012~2020年のCPU & GPU統合型プロセッサの姿とは?