後藤弘茂のWeekly海外ニュース

GPUサーバーの時代を開くNVIDIAの「Tesla」




●GPUサーバーの時代がやって来る

 サーバーに、CPUの代わりにGPUを搭載する「GPUサーバー」の時代が訪れようとしている。GPUに、各種シミュレーション、データマイニング、財務分析、画像認識、メディカルデータ生成といった、非グラフィックス処理を行なわせるためだ。こうしたGPUの汎用的なコンピューティングへの応用は、「GP(General-Purpose)GPU」あるいは「GPUコンピューティング」と呼ばれている。

 従来のGPUコンピューティングは、グラフィックスカードを使って行なっていた。あくまでも、“グラフィックス”カードの汎用的な処理への転用だった。それに対して、GPUサーバーは、グラフィックス用途向けではなく、GPUコンピューティング専用に設計されている。通常のグラフィックスカードとは異なり、グラフィックス出力は持たない、非グラフィックスアプリケーション専用だ。今後は、GPUサーバーが、ハイエンドのGPUコンピューティングの主役となって行くかもしれない。

 そして、この市場に最も力を注いでいるのがNVIDIAだ。NVIDIAは、いよいよ本格的にハイパフォーマンスコンピューティング(HPC)市場に向けたGPUサーバーを展開し始めた。

 NVIDIAは、GeForce 8(G8x)アーキテクチャベースのGPUコンピューティング製品ファミリ「Tesla(テスラ)」を発表。その中核に、1Uラック型の「Tesla GPU Server」と、デスクサイド型の「Tesla GPU Deskside Supercomputer」を据えた。

 1Uサーバーは、最大4個のG8xアーキテクチャGPUを搭載、最高で2TeraFLOPSの演算パフォーマンスを提供する(単精度で積和算以外のオペレーションも含む)。1U型のGPUサーバーをラックに重ねて、GPUサーバーファームを構築することも可能だ(制御するCPUサーバーも必要)。また、PCI ExpressベースのGPUコンピューティングアドオンカード「Tesla C870 GPU」も用意する。

 NVIDIAは、新ブランドを冠したGPUサーバー製品群で、何を狙っているのだろう。

Tesla GPU (C870) Tesla GPU Deskside Supercomputer Tesla GPU Server

●GPUコンピューティングに特化した製品と戦略

 NVIDIAの今回のTeslaは、一見すると、1年前に同社が発表したGPUサーバー的な製品「Quadro Plex」と同じ方向性に見える。Quadro Plexはデスクサイド型GPUサーバーで、ボックスをサーバーラックに設置することも可能だった。PCに接続するGPUボックスという点では、似た戦略に見える。

 しかし、Quadro PlexとTeslaには、見かけ以上の本質的な違いがある。製品レベルで見ると、Quadro Plexはグラフィックス出力を残しているのに、Teslaはグラフィックス出力を持たない。Teslaでは1Uラックサーバーがあり、ホストコンピュータとの間をPCI Express Gen2ケーブルでコネクトするといった違いがある。しかし、両ブランドの本当の違いは、もっと根源的な戦略面にある。

Andy Keane(アンディ・キーン)氏

 NVIDIAは、Teslaでは新たに「GPU Computing Business Units」と呼ぶ新部門を設立、GPUコンピューティングに特化した製品開発とサポートを行なう。従来とは完全に異なる顧客を想定しており、そのために、MIPSなどCPU畑を歩んできたAndy Keane(アンディ・キーン)氏(General Manager, GPU Computing Business Units)を、ジェネラルマネージャに据えた。Keane氏は次のように説明する。

 「我々が、Teslaという異なるブランドと製品を用意したのは、従来とは異なる顧客のためだ。Quadro Plexは、ハイエンドのビジュアライゼーションアプリケーションのための製品だ。グラフィックスビジネスの頂点だが、非常に小さな市場だ。

 それに対して、Teslaが対象とするのは、より広いコンピューティング市場だ。Teslaの顧客は、データセンターや研究所といった、通常、グラフィックス製品を買わない層だ。彼らの要求仕様は、グラフィックスとは大きく異なっている。

 コンピューティング製品として、異なる機能、異なる価格体系、異なるサービスが必要になる。また、顧客が望む、製品の進化の方向性も、グラフィックス製品の方向とは異なって来る。だから、TeslaはTeslaのロードマップを用意している」

 つまり、CPUサーバーやCPUワークステーションを使っている顧客に、GPUコンピューティングサーバーとワークステーションを開発して売るための態勢を整えた。それがTeslaの重要な意味だ。また、これは、試験的な製品展開で市場の動向を見る段階を過ぎて、本格的にGPUサーバーを戦略展開する段階にNVIDIAが入ったことを意味している。NVIDIAは、それだけGPUサーバーの市場に手応えを感じているわけだ。

 GPUサーバーが浸透しようとしている分野のアプリケーションは、ベクタ型のプロセッサで高速処理ができる部分が多い。アプリケーションによっては、ベクタプロセッサであるGPUを使えば、汎用CPUの数倍から数十倍のパフォーマンスが期待できる。そこで、ユーザーがCPUからGPUへと向かうだろうとNVIDIAは読んでいるわけだ。

●5年前から予告されていたGPUサーバー

David B. Kirk(デビッド・B・カーク)氏

 NVIDIAがGPUサーバーを展望し始めたのは、最近のことではない。同社は、GeForce FX(NV3x)アーキテクチャを発表した頃から、すでにGPUサーバーを視野に入れていた。例えば、NVIDIAのDavid B. Kirk(デビッド・B・カーク)氏(Chief Scientist)は、2002年のインタビューで次のように語っている。

 「近い将来、レンダリングファーム(映画CG制作などで使われるレンダリング用サーバー群)のサーバールームには、GPUが並ぶことになるだろう。多分、そのサーバーマシンは、(1台に)複数のGPUを搭載しているだろう。GPUサーバーファームになる」

 この時に語っていたのはQuadro Plexがカバーする市場だが、2004年には、ハイパフォーマンスコンピューティング(HPC)の世界にもGPUサーバーが浸透するとKirk氏は予言している。

 「CPUを搭載した現在のラックマウントサーバーと同じスタイルのGPUサーバーが、近いうちに登場するだろう。ただし、CPUサーバーよりずっと(コンピューティング性能に対して)省スペースとなる。

 用途も、レンダーファームだけでなく、科学技術コンピューティングにもGPUサーバーが使われると予測している。実際、大学の研究室や政府の研究機関などで、多くの人々がGPUサーバーに関心を示している。彼らは、物理シミュレーションやオイルやガスの探査といったタスクの研究をGPU上で行なおうと考えている」

 こうしてみると、現在のNVIDIAのGPUサーバー戦略は、NV3x発表前後からすでに敷かれていた路線であることがわかる。HPC市場への展開も、数年前には、かなり具体的に描かれていた。そうしたビジョンが、ようやく実り始めたのがTeslaだ。

 GPUサーバーを考えていたのはNVIDIAだけではない。旧ATI Technologiesも、ほぼ同時期にハイパフォーマンスコンピューティングへのGPUの応用を口にし始めていた。例えば、2003年には、当時ATIの社長兼COOだったDavid(Dave) E. Orton(デイブ・オートン)氏(現Executive Vice President, Visual and Media Businesses, AMD)が、次のように語っていた。

 「面白いことに、科学技術演算のプログラムも、(グラフィックスプログラムと)同じように直線的で規則性がある。だから、ベクタスーパーコンピュータが現在行なっているような処理は、グラフィックスプロセッサでもできるだろう」

 こうしてみると、DirectX 9ハードへと足を踏み出した時点から、GPU業界全体の次の目標はHPC市場までをカバーするGPUサーバーだったことがわかる。GPUの技術トップ達の展望するGPUサーバーが、本格的に実現したのがTeslaだ。

●G80アーキテクチャとCUDAがGPUサーバーのカギ

 もっとも、NVIDIAがGPUサーバーを本格的に事業化するまでには、時間が必要だった。Kirk氏がGPUサーバーの構想を語り始めてから、ほぼ5年かかってようやく実現したことになる。5年はコンピュータ業界では極めて長い。「プログラミングモデルや環境、さまざまな要素が成熟するまでには時間が必要だった」とKirk氏は語る。

 NVIDIAにとってGPUサーバーのカギは、汎用的な利用に向いたアーキテクチャを取ったGeForce 8(G8x)コアと、GPU上での汎用的なコンピューティングを可能にするプログラミングモデル「CUDA(クーダ:compute unified device architecture)」だ。それ以前のNVIDIA GPUアーキテクチャと、グラフィックス用プログラミング言語「Cg」では、汎用的なコンピューティングは難しかった。NVIDIAもハードとソフト両方の試行錯誤が必要であり、G80とCUDAの2つが揃ったことで、NVIDIAは、本格的にGPUサーバーを推進できるようになった。だから、今、Teslaなのだ。

 もっとも、GeForce 8800(G80)発表時には、NVIDIAはまだGPUサーバーを前面には押し出していなかった。NVIDIAを率いるJen-Hsun Huang(ジェンセン・フアン)氏(Co-founder, President and CEO)は、GeForce 8800の技術発表イベントで、HPCやスーパーコンピュータ市場に対して次のように語っている。

 「コンピュータ業界を見渡すと、スーパーコンピュータの危機と言える状況がある。スーパーコンピュータは投資を回収して利益を上げることが難しいからだ。しかし、スーパーコンピュータの性能が必要な、複雑な(計算を必要とする)問題は数多く存在する。GPUには、そうした複雑な問題を、コモディティデバイスで解決するチャンスがあると思う。CUDAなら、そうした市場へも(GPUを)拡大できる。世界で最も複雑な問題に対して、(GPUを)演算リソースとして提供することができるだろう」

 HPCにGPUをコンピューティングリソースとして投入することは積極的だが、スーパーコンピュータのような専用システムの構築には乗り気ではないことがわかる。あくまでも、コモディティであるGPUのポジションを維持したままで、HPC市場を開こうとしている。

●市場に手応えを感じ始めたNVIDIA

 しかし、現在のTeslaでは、それよりも一歩前に出て、よりGPUコンピューティングに特化した製品を作ろうとしているように見える。Teslaをアナウンスした現在、NVIDIAのハイパフォーマンスコンピューティング市場への姿勢は、G80発表時よりぐっと強くなったように見える。Keane氏は、過去半年の変化を次のように語る。

 「GPUコンピューティングに向けた製品を現実化するにつれて、我々自身も多くを学んでいった。最初に学んだのは、この市場はじつは非常に大きいということだった。次に学んだのは、ハイパフォーマンスコンピューティングの顧客の要求は、我々の従来の顧客とは非常に異なること。そのために、GPUコンピューティングに特化して行く必要があった」

 NVIDIA自身が予期していたよりもさらにHPCの市場が大きく、そのために、Teslaブランドを立てて積極的な製品展開を始めたようだ。

 もちろん、HPC市場の規模は、PCと比べれば相対的に小さい。しかし、演算の重いHPC分野では、GPUによるベクタプロセッシングの効果が大きく、アプリケーションが大幅にスピードアップされる。そのため、GPUコンピューティングの効用を示すには最適だ。NVIDIAにとっては、いい広告塔となる。また、HPC分野では、ソフトウェアは、研究者自身や専門化した小ソフトウェア会社が開発している。彼らは、ある程度のスピードアップが見込めるなら、特殊なプログラミングモデルでも受け入れるだけの意欲と技能を備えている。そのため、アプリケーションの獲得も比較的容易だ。

 また、HPCは、将来の一般アプリケーションのビジョンを示すものかもしれない。RMSと総称されるRecognition(認識)、Mining(分析&抽出)、Synthesis(合成)といったコンピューティング処理が、将来のPCのユーセージで普及すると、HPCをGPUコンピューティングでアクセラレートするのと同じ効果が期待できる。だとすると、GPUサーバーは、特定アプリケーション分野に限定された戦略ではなく、将来予想されるアプリケーション市場への前哨戦の意味も持っている。

●G9xでは64-bit浮動小数点演算もサポート

 NVIDIAがGPUサーバーに注力し始めた背景には、アプリケーション市場のこうした特徴もあると思われる。もっとも、Teslaをよくみると、GPUのコモディティとしての本質には手を加えないという思想がよくわかる。

 TeslaではGPUシリコン自体には手を加えておらず、GPUボードの基板設計もグラフィックス製品にかなり近い。つまり、GPU自体は変えずに、その周辺だけを変えてコンピューティング向けの製品を作り出している。そして、顧客のニーズを吸収した結果、1Uラック型のGPUサーバーの開発へと進んだという。

 「顧客の多くは、1Uサーバーのラージスケールのコンピュータを求めている。データセンターでは1Uで、一定のスペースと電力の中で、できるだけ高いコンピューティング密度を達成したがっている。そのため、我々は、1Uラックベースの、真のサーバー製品ラインを開発する必要があった。

 1U GPUサーバーでは、1Uの小さな(インターフェイス)スペースに納めるためグラフィックスコネクタを装着することは難しい。そのため、コンピューティングに特化して、グラフィックスコネクタは一切持たないフォームファクタの設計からスタートした」とKeane氏は語る。

 デスクサイド型システムも、別なニーズから生まれた。

 「顧客の中にはPCやワークステーションのユーザーもある。彼らのマシンは、高性能なグラフィックスではなく、CADタイプのシンプルなグラフィックスしか搭載していない。グラフィックスワークステーションではなく、コンピューティングワークステーションだ。そうしたマシンに、ハイレベルのGPUを加える最良の道は、PCやワークステーションに接続するデスクサイドユニットだった」(Keane氏)

 NVIDIAはGPUサーバーに特化したTeslaを、今後も発展させて行く。その一方で、GPUコア自体の、GPUコンピューティング向けの機能も、さらに充実させて行く。次のG9x世代では、ワンチップで1TeraFLOPSと現在の倍の演算パフォーマンスを実現。また、64-bit浮動小数点演算のサポートも行なうという。CPUへのGPUの統合化を目前にして、NVIDIAはGPUコンピューティングを押し出すことで、ディスクリートGPUの存在意義を高めて行こうとしている。

□関連記事
【6月21日】NVIDIA、G80ベースのHPC向けGPU「Tesla」
http://pc.watch.impress.co.jp/docs/2007/0621/nvidia.htm

バックナンバー

(2007年7月2日)

[Reported by 後藤 弘茂(Hiroshige Goto)]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp ご質問に対して、個別にご回答はいたしません

Copyright (c) 2007 Impress Watch Corporation, an Impress Group company. All rights reserved.