ソニー・コンピューターエンタテインメント(SCEI)が提唱する「Cellコンピューティング」。SCEIがCellコンピューティングを導入する目的は、次世代PlayStation(PS3?)に1,000倍のパフォーマンスを与えることだけではない。最終的な目標は、コンピュータのトポロジーを変え、MicrosoftとIntelが主導してきた従来のコンピューティングのパラダイムを切り替えることだ。 その意味では、Cellコンピューティングは、現在のコンピュータアーキテクチャに対する挑戦とも言える。Cellコンピューティングで、Wintel主流のコンピュータアーキテクチャをひっくり返そうというわけだ。そう考えると、PS3のためにCellコンピューティングがあるというより、Cellコンピューティングという大きな構想があり、その最大のアプリケーション(けん引車)としてPS3があると考えるのが正しいと思われる。では、Cellコンピューティングとは一体何で、SCEIはどうやってそれを実現させようとしているのだろう。 Cellコンピューティングの概念自体はそれほど難しい話ではない。久夛良木健氏(ソニー副社長/ソニー・コンピュータエンタテインメント社長兼CEO)は次のように説明する。「今までのネットワークは情報のネットワークだったが、今度は(ネットワークが)ピア・ツー・ピアコンピューティングのバスになる。それがCellのコンセプト」、「グリッドコンピューティングは、バッチ処理でノンリアルタイムだが、それがリアルタイムでできるようになると面白い。それがCellコンピューティングだ」。 つまり、Cellコンピューティングでは、ネットワーク上でCellプロセッサ同士がピア・ツー・ピアで処理を分散する。グリッドコンピューティングと似ているが、今のグリッドは、リアルタイム性が必要なアプリケーションには適用できない。しかし、Cellコンピューティングでは、グリッド型のコンピューティングをゲームのようなリアルタイム処理にまで適用できるようにする。 このCellコンピューティング構想が実現すると、ネットワーク(LANまたはインターネット)経由で、ソフトウェアの処理を分散できるようになる。そのため、ユーザーが利用できるコンピューティングパワーは、ローカルにあるマシンに縛られなくなる。例えば、処理が重い場合には、ネットワークの向こうにある他のCell搭載マシンに処理の一部を分担させることが、簡単にできるようになる。
つまり、水道をひねれば蛇口から必要なだけの水を出すことができるのと同様に、ネットワークから必要なだけのコンピューティングパワーを引き出すことができるようになるわけだ。インターネット上でCellコンピューティングが実現すると、最終的には、「地球シミュレータ(地球環境をシミュレートするスーパーコンピュータ)の1万倍とか10万倍」(久夛良木氏)のコンピューティングパワーも実現できるようになる。例えば、映画「マトリックス」の仮想世界のようなシミュレータを、いつの日か実現することも可能になるかもしれない。
●リソースを均質化して分散化を容易にする こうした分散コンピューティングのアイデア自体は昔からあった。しかし、これまでは、それをリアルタイム処理が必要なゲームのようなソフトウェアにまで応用することはできなかった。今回SCEIは、Cellコンピューティングのために、分散コンピューティングを前提に設計したCPUとOSを用意することで、これを実現しようとしている。 SCEIが申請している(Cellと思われる)CPUに関する特許では、従来のアプローチの例としてJavaについて触れている。Javaでは、Javaバイトコードで書かれたソフトウェアは、Java仮想マシーンが走るどのコンピュータ上でも使うことができる。だから、Javaでは原理的にアプリケーションをネットワーク上のどのマシンに分散しても、Javaバイトコードのまま処理できる。 しかし、元々異なる命令セットを使うCPUが混在するネットワークで、同じソフトウェアが走るようにするため、JavaではJava仮想マシーンを作らなければならなかった。そのため、JavaはCPUの本来のパワーを引き出すことが難しい。SCEIの特許ではこの点に触れ、Javaモデルではリアルタイム性の必要なアプリケーションには難しいと説明している。 それに対してSCEIの特許が取るアーキテクチャでは、ネットワーク上のプロセッサに同じアーキテクチャを採用することで、この問題の解決を図る。つまり、分散処理をするコンピュータをハードウェアレベルで均質化することで、分散化を容易にしようというわけだ。そのため、Cellプロセッサはモジュラー構造のCPUで、同じアーキテクチャでスケーラブルな構成を取ることができる構造になるとされている。 つまり、どのCellプロセッサもCPUコアとして「Processor Element(PE)」を(単数または複数)搭載し、各PEの中には制御を行なう「Processing Unit (PU)」と、メモリアクセスを担当する「Direct Memory Access Controller (DMAC)」が1個づつと、複数のサブプロセッサ「Attached Processing Unit (APU)」がある。各Cellプロセッサで、PEやAPUの数や構成は異なる可能性があるが、アーキテクチャ自体は均一となる。
そのため、ソフトウェアがCellの命令セットで書かれていれば、Javaのように中間コードからCPUのネイティブコードに変換する必要がない。また、どのCellも(ユニットの数は異なるものの)基本的な構造は同じなので、利用できるコンピューティングパワーも把握しやすい。マルチメディアのような、速度とレスポンスが重要となる処理も分散できるようになるというストーリーだ。
●まず家庭からCellコンピューティングを浸透させる
この構想は素晴らしいが、そこにはもちろん疑問もあった。それは、(1)どうやってネットワーク中にこの新しいパラダイムを浸透させていくのか、(2)ネットワークのレイテンシ(遅延)などの問題をどうするか。今回、久夛良木氏はその問いに、答えている。
つまり、最初に家庭内LAN上で実現し、次にインターネット経由で実現するという現実的な案を持っているわけだ。例えば、家庭にCellプロセッサを搭載したゲーム機(PlayStation 3)が入り、それから同様にCellを搭載したホームサーバー、Cell搭載のデジタルTVなどが入る。そうすると、その3個のCellプロセッサで、小規模ながらもCellコンピューティングが可能になるというシナリオだ。 久夛良木氏はソニーグループで、Cellをこうした機器にも搭載していきたいと語っている。Cellプロセッサ自体も、特許の通りならモジュラー構造なので、それぞれの機器に応じた柔軟なコンフィギュレーションが可能になるはずだ。そうなるとソニー製品でまとめるなら、今後数年間で次々にCell搭載マシンが家庭に入るわけで、そう考えるなら、家庭内Cellコンピューティングはかなり現実的なシナリオになってくる。 ネットワークも、LANなら家庭内でも十分広帯域にできるし、インターネットと比べるとレイテンシは少ない。だから、帯域とレイテンシが問題になりそうな、Cellコンピューティングも実現できるというわけだ。 SCEIの構想では、このCellコンピューティングをインターネットに広げるのは次のステップになる。インターネットCellコンピューティングが、やや遅れたとしても、当面は家庭内でまずCellコンピューティングの活用の実証を行なっていくことができる。現実的なステップだ。 もっとも、SCEIが初めからこうした構図を描いていたのかどうかはわからない。この構想を実現するには、SCEIだけでなくソニーグループ全体の合意が必要だからだ。グループ全体でCellコンピューティングを推進しない限り、Cellが家庭に何台も入っていくというシナリオは描けない。
現時点では、久夛良木氏がはっきり語っていることから、かなりシナリオが固まっていると想像される。ソニーショックなどを経て、ソニーグループ内部での危機感が高まった結果、Cellコンピューティングの選択という流れになったのかもしれない。
□関連記事 (2003年9月9日) [Reported by 後藤 弘茂(Hiroshige Goto)]
【PC Watchホームページ】
|
|