Planet GEEK:ITmediaオルタナティブ・ブログ (RSS) Planet GEEK

社会的にアレな人に最適化されたブログ

 本田さんのエントリを見て「へー。Playstation 3ってスゲー」って今さらながらに思ったのだが、よくよく考えると、Playstation 3関連についてこれまでまともにニュースを見ていなかった自分に心底あきれ、 まずはCellプロセッサが何か知ろう! と思い立ったのは、こちらのCMを100回くらい見続けてもはや夜も明けようかという午前5時を回ったところだった。

 で、2度あきれたのは、このCell関連の記事、仕様をオープンソースに、などの記事はあるが、詳細なアーキテクチャに触れた記事というのが恥ずかしながらITmediaにはほとんど存在しなかった。では、と@ITを探すと、幾分テクニカルな内容に触れた記事を見つけた。が、具体的な部分には触れていないのでイメージがわきにくい。


 仕方ないのであちこちのニュースサイトを調べると、Cellは汎用的なプロセッサコア1個と、プロセッサコア8個で構成されるという。前者がPPE(Power Processor Element)で後者がSPE(Synergistic Processor Element)だ。PPEはSPEの制御とかを主に担当し、SPEは32ビット浮動小数点実数からなるベクトル演算に特化したプロセッサとのこと。で、Playstation 3では大人の事情?で8個のSPEのうち1個は予備として休ませているようだ。トータルでの単精度浮動小数点演算能力は218GFLOPSらしいけど、実質的なデータ処理を担当するSPEのそれはこちらの記事を見る限り、179.2GFLOPSとある。まぁいずれにしてもPentium 4 3.8GHzの単精度浮動小数点演算で約15GFLOPSだから、確かにすごいパフォーマンスが出そうだな。

 ちなみに、倍精度浮動小数点演算では4GHz時の場合で26GFLOPSにまで落ち込むらしい。まぁスパコンが利用されるシーンのように倍精度を使わなければならない場面がゲームの世界で本当に必要とされるのかは謎なので、とりあえずそんなに重要なポイントではない気がするけど。


 話がそれたが、このSPEのSIMD(Single Instruction/Multiple Data)ユニットは積和算を1サイクルで2演算できるとな。さらに、それが4並列で演算できると。結果、1サイクルで8演算できるということね。ふむ。

 このSPEにはそれぞれ256Kバイトのメモリ空間(Local Store:LS)がある。これ以外にデータをストアできそうな場所が見あたらないので、これはSPEにとってはメインメモリ的に振る舞うはずだ。つまり、SPE自体はキャッシュを持っていないことになる。となると、SIMDユニットとLSのバンド幅が気になるのだが、こちらの記事にある図では16B/サイクルとある。Bは多分バイトだろうから、128ビット/サイクルとなるのだろう。とすると、8演算できるので16ビット/サイクルか。


 次はメモリ周り。メインメモリは米RambusのXDR DRAMで、その帯域は25.6Gバイト/sec。これも素晴らしい。 Playstation 3ではSPEのクロックが3.2GHzだから、8バイト/サイクルとなる。ただし、これは7個のSPEとPPEでの共用のはず。となるとSPE1個あたりでは1バイト/サイクル、つまり、8ビット/サイクル程度になるはず。


 ん? ……書くのが少し恐ろしいのですが、これって1演算あたり1ビット/サイクル程度ってこと? つまり、LSから転送する場合と比べて1/16程度の速度になってしまうってこと? これって、データがLSの中に収まればいいパフォーマンスが期待できるけど、そうでなければ179.2GFLOPSなんて化け物みたいなパフォーマンスはありえないってことなのかな??


 と、ここまで書いてようやくさっきの記事の言わんとすることが見えた気がしたので、あぁすまなんだ@ITよと日比谷の方向にこうべを垂れた。


 自分が書いていることの検証も終わっていないが、とりあえず寝る。起きたらまた考えよう。にしてもCellは難しい。もっと! もっと自分に資料と真実をくれ!

●げ、これって周知だったのか。そりゃそうだよなー、門外漢の自分が気づくことを専門家が知らないわけないし。最高に恥ずかしい。


バイナリーなネールアート

こんな女性がいたら付き合いたいと思う。


スターウォーズエピソードIII

みた。まぁネタバレになるからあんま書かないが、ジェダイが弱いっちいのはまぁいいとして、シスをアメリカと読み替えながら見てみるといろいろと楽しめるな。

さてエピソードIIみるかー。


覚え書き

Linuxのクラッシュダンプ機能についてまとめたい。LKCD、netdump、diskdump、Mini Kernel Dumpってところか。

Mini Kernel Dumpについてはいいドキュメントを見つけたので、ここを皮切りに特集にするかな。

にす

Special

- PR -
コメント
某関係者 2005/06/25 22:22

指摘の件、かなり合っています。世間ではcellは無条件にスゴイと思われていますが、メディアの皆さんにはしっかりと伝えて欲しいと思っています。

本田雅一 2005/06/26 11:07

う〜ん、無条件でCellが凄いって伝えられ方はしていないと思いますけど。現時点ではSCEI向けのスペシャルなプロセッサという印象ですし、そういう捉えられ方では。
たとえば単精度はサイクルあたり2個の演算ができますが、倍精度では1個になってさらに4サイクルかかるので性能は1/8になります。それでもSX-8の16GFLOPS(CPU単体)よりは数値的には上になりますが。
LSに入らない計算をする場合、それはスループットが落ちますし、二つのSPEが連携する場合、LSの内容を別のSPEに転送する時間なども発生します。SPEはLSを持っているからこそ、並列度が高く実効でもかなり高い性能が出ますが、その分、前提条件に合わない処理の場合に性能が極端に落ちる。
でも、それは選択肢だと思いますけど。従来の情報処理の枠組みの中で高性能化しようってコンセプトじゃありませんから、その割り切りは良い意味で評価されるべきだと思います。

某関係者 2005/06/27 00:03

情報処理の枠組みの中でうんぬん、としているのに、「SX-8の16GFLOPS(CPU単体)よりは数値的には上」とか書いている時点で言っていることが破綻されていますけど。そもそも問題はデータの転送であって、プロセッサのFLOPSではないでしょうに。P4のピーク性能はベクトルのそれを上回っていますし。

名無しさん必死だな 2005/06/27 01:58

>にしてもCellは難しい。もっと! もっと自分に資料と真実をくれ!

Cell 36
http://game10.2ch.net/test/read.cgi/ghard/1119111984/

罵詈雑言付きで資料と真実があります

通りすがり 2005/06/27 02:29

ここで結構検証されてますよ。
http://www.ne.jp/asahi/comp/tarusan/index.html

にす 2005/06/27 02:53

> 某関係者
自分はcellについては何も勉強してないので、しっかりと伝えるには知っている人がいいドキュメントを執筆いただけると非常にありがたいです。

> 本田雅一さん
あ、無意識にさんを付けてしまった!
ハードウェアは難しいですねぇ。どのあたりから勉強すれば習得が早いんですか?

> 名無しさん必死だな
おー、すごい勉強になります。周知の事実だったんですね。恥ずかしい……。>> 678などは非常に参考になりました。

> 通りすがり
スパコンの記事の参考に「スパコン素人談義とTOP500」のページをブックマークしていたのですが、幅広く書かれてるんですね。やはりたるさんはすごい。

本田雅一 2005/06/27 03:03

う〜ん、別にSX-8とまじめに能力を比べるつもりもなんにもないんだけどなぁ。1/8でもSX-8のシングルよりは上ってのは、CELL養護派が使う言葉なんで、ピーク値の比較として挙げただけですが。

SPEがLSの容量に依存しているのは確かですが、ゲーム用途でのシミュレーションということであれば、性能は出るでしょう。開発ツールを使っている人に話を聞いたことがありますが、SPEを2個でデータを転送しながら処理するような場合でも、通信チャネル上でのネックはほとんどないと話しています。(ただ隣のSPEが割り当てられるとはギャランティされないので、レイテンシを読んでプログラムすることができないのはちょっと……とは話していましたが)

逆にIBMのワークステーションなんかは、用途の面で厳しいように思いますけれど。そういう意味でも、SCEIスペシャルだなぁという感想だったんですが。

くろ 2005/06/27 09:27

>8個のSPEのうち1個は予備として休ませているようだ。

これは予備ではありません。
SCEはリダンダンシー(冗長性)を取る為だとしています。
要するに、7つ仕様と決めてしまう事によってCellの歩留まりを上げている訳です。
8個の内7つが正常ならばPS3用途では良品扱いに出来ます。

>前提条件に合わない処理の場合に性能が極端に落ちる。

そもそも最初からCPUにRAMの速度が追い付く位ならば、
キャッシュとかいった姑息な手段も全く不要な訳で…
LSから外れたらパフォーマンスが落ちると非難めいた事を言われても…


にす 2005/06/27 18:32

> くろ
なるほど。冗長性としながら、歩留まりも考えている。うまいなぁ。
で、PS3の性能うんぬんは非難したいわけでもなく、単にソフト開発でどうすればいいパフォーマンスが出せるのかを扱う特集も面白いかなと思っただけだったりします。

くろ 2005/06/30 08:55

>冗長性
半導体ウェハは余裕を作って落とす方が歩留まりが出やすいらしいです。
DRAMなどでは常套手段だそうで。
ASICではこういった冗長性は取りにくいですがCellの場合はプロセッサの群体とも言えるので他プロセッサより冗長性が取りやすいでしょう。
 
>パフォーマンス
Cellは如何にレイテンシを隠蔽するかが命題で当然設計にも考慮されています。
SPEには個別に専用の16chDMAを持ってますし、実行の裏で逐次データの補充も可能でしょう。
なんにしても、従来のプロセッサの常識では計り知れないものがあると思います。


コメントを投稿する
メールアドレス(必須):
URL:
コメント:
トラックバック

http://app.blogs.itmedia.co.jp/t/trackback/77444/2787701

トラックバック・ポリシー


» このブログのTOP

» オルタナティブ・ブログTOP



プロフィール

<!-- include:/geek/profile_name.html -->西尾 泰三<!-- /include:/geek/profile_name.html -->

西尾 泰三

ITmedia eBook USER編集部スペシャリスト。
電子書籍を含めた国内外の出版業界の動きを鋭角な視点でお届け。
記事には書けない内容とともに日々のアーカイブを行います。

詳しいプロフィール

Special

- PR -
最近のトラックバック
カレンダー
2014年9月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        
カテゴリー

オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。


サイトマップ | 利用規約 | プライバシーポリシー | 広告案内 | お問い合わせ