ニュース
NVIDIAの新チーフサイエンティスト,Bill Dally氏が講演。「CPUは終焉に向かっている」
本講では,1月にNVIDIAのチーフサイエンティストへ就任した氏による講演,「The End of Denial Architecture and The Rise of Throughput Computing」(否定するアーキテクチャの終焉と,スループットコンピューティングの興隆)の内容をレポートしていくことにしたい。
「CPUにパフォーマンスの伸びしろはない」
冒頭で挙げたタイトルに含まれる「Denial Architecture」というのは,なかなか分かりにくい言い回しだが,Dally氏が講演のなかで使った言葉を借りるなら,「シリアルプロセッサ」であり,要するに,従来の典型的なCPUのこと。CPUが何を“否定するアーキテクチャ”なのかは後ほど触れるが,Dally氏は講演の冒頭で,「CPUのスケールがこれ以上拡張されることはない」と断言する。「スケール」(scale)は,ここでは「パフォーマンスの伸びしろ」といった意味合いになるが,「それはなぜか」というのが講演の主要なテーマになるわけだ。
Dally氏はまず有名なムーアの法則を引き合いに出す。
ご存じの読者も多いと思うが,ムーアの法則とは,Intelの共同創立者であるGordon Moore(ゴードン・ムーア)氏が提唱した,「半導体の集積度は18か月で2倍になる」という予測のこと。Dally氏はここで「あくまで集積度に関するものであり,プロセッサのパフォーマンス向上を予測した法則ではない」と説明する。「CPUはこれまで,ムーアの法則に従って増えたトランジスタをアーキテクチャの改善に振り向けてきた。その結果としてプロセッサのパフォーマンスが向上し,より複雑でリッチなアプリケーションが利用できるようになり,結果としてユーザーに大きなバリューをもたらしてきたのだ」(Dally氏)。
では,CPUはより大きなバリューをもたらし続けているのだろうか。Dally氏は,CPUの命令実行速度の伸びは1990年後半から鈍化し始め,2000年代に入ると年率19%の伸びにまで落ちてきているというデータを示したうえで,「GPUはそうではない」と断言する。「GPUの性能は依然として年率74%という高い伸びを示し続けている。ユーザーにより大きなバリューをもたらすのがGPUであることは明らかだ」(Dally氏)。
実際,CPUのパフォーマンスの伸びが最近鈍化していることは,PCユーザーの多くが実感していることだろう。ここまでのDally氏の話は十分に納得できる印象である。
CPUの命令の実行速度の向上を表したグラフ。1990年代中頃までは年率52%のパフォーマンス向上率を示していたCPUだが,後半以降,鈍化が始まったという |
それに対し,GPUは依然として年率74%という高い伸びを維持し続けているというスライド |
キーワードは「並列化」と「局所化」
なぜCPUの性能の伸びは止まりつつあるのだろうか。Dally氏は,CPUに科せられている技術的な制約である,エネルギー効率について話題を移した。「演算処理系で最もエネルギーを消費しているのは何か?」という問いに対しては,演算ユニットと答えてしまいそうになるが,Dally氏はその答えが,「データの移動」であると述べる。
上のスライドで示されているように,データの移動に要するエネルギーは意外に大きい。したがって,データはできるだけ移動させないほうがよく,局所化が重要だとDally氏は強調する。平たくいえば,データは演算ユニットの近くに置いたほうがエネルギー効率の点から有利ということである。
これに対して,CPUは局所化には向かないアーキテクチャである。CPUでも多階層キャッシュを使ってデータを近くに置くようにはなっているが,プログラマからはメモリがフラットに見える(データがキャッシュ上にあるのか,メインメモリ側にあるのか分からない)アーキテクチャだからだ。「フラットなメモリを採用するCPUは終焉に向かっている」(Dally氏)。
Dally氏は並列化,局所化を重視したコンピューティングを「Throughput Computing」(スループットコンピューティング)と呼んでいる。そして,氏のなかでこれと対置されるのがCPUである。講演のタイトルにあるDenial Architectureには,CPUが「並列化と局所化を否定するアーキテクチャ」という意味が込められていたわけだ。
Dally氏によれば,スループットコンピューティングはすでに多くのアプリケーションに利用されているという。さらにDally氏は,並列処理の限界としてよく指摘される「アムダールの法則」も問題にならないと断言する。
アムダールの法則というのは,簡単にいうと,「処理のなかには,並列化できない部分があり,その『並列化できない部分』のせいで,並列度を高めれば高めるほど,パフォーマンスの伸びは鈍化する」というものだ。だがDally氏はこれを真っ向から否定し,「アプリケーションに,並列化できない部分はない」と断じている。
……いや,さすがにこれは極論であり,もちろん実際には,どうしても並列化できな部分を抱えるアプリケーションは多く存在するのだが,Dally氏が言いたいのは,「ユーザーに今以上のバリューを与えられるようなアプリケーションは,ほとんどが並列化が可能だ」ということだろう。
Dally氏の率いる研究開発部門が,今後のNVIDIA製GPU製品,そしてGeForceにどのように影響を与えていくのかは未知数だが,NVIDIAが,GPUコンピューティングに大きく舵を切っていくなかで,強力な指導者を得たということだけは確かだ。そのことを強く感じさせてくれる講演だったように思う。
- 関連タイトル:
CUDA
- 関連タイトル:
GeForce GTX 200
- この記事のURL:
Copyright(C)2008 NVIDIA Corporation