2007年12月25日火曜日

2009に激突

休憩中、暇つぶしにG100はどうなるんだべ〜とググってみたら、

http://xtreview.com/addcomment-id-2151-view-NVIDIA-G90-G100-DATA.html


Unlike G90 that is based on the same architecture as the G80 aka NV50,the nVIDIA G100 (NV60) will be a totally new architecture and support Shader Model 5.0.The nVIDIA G100 will be based on TSMC 45nm process and will amount to more than 1.5 billion transistors .The nVIDIA G100 will support the nVIDIA CUDA 2 technology and will have much more computational power than the NV50(aka G80/G90) architecture..Marketing name for the G100 is said to be "GeForce X1800 GTX"...G100 will have almost 2 Teraflops of shader processing power..
The nVIDIA G100 is to be released in Q4 2008 or Q1 2009 timeframes..

Cuda 2とかうわさでてるんだ。45nmのnvidia g100で2Tflops。なるほど。


Cellの2代目(32SPE)もLarrabeeも2009年らしい。こりゃ大激突だな、本当。性能も価格もきっと大差はないだろう。そうなると、やりやすい環境をそろえたのが勝ちだな。

2007年12月20日木曜日

Lovely Kuta

クタタンは世界の宝だ。
http://wiredvision.jp/news/200712/2007121923.html
http://wiredvision.jp/blog/fromwiredblogs/200712/20071219121017.html

CellがFoldihg@homeで偉業達成したり、Road Runnerに採用されたり、本当にすごいことをやらかして、かつ、こんな笑いを取れるのはこの人しかいないよ!

PS4で戻ってこないかなあ。無理かなあ。もしくはCellみたいな金かかることじゃなくて、コストのかからないような事業をいちからやってもらったら、またなんか面白いことをやってくれそうな気がするんだけどなあ。

2007年12月19日水曜日

俺核爆死

やられた…。

http://www.nvidia.co.jp/object/tesla_testimonials_jp.html

ここまで大規模なのをやってたなんて。こんなに短期間の内に。NVIDIA本当にやる気なんだな。

くくく、まあいいさ、楽しくなってきたよ。

2007年12月18日火曜日

マルチコア用自動最適化コンパイラ

「マルチコア用自動最適化コンパイラなんて絶対できない」

あるコンピュータアーキテクトとお話していたときに、その人は苦笑まじりでそういっていた。

私はコンパイラの開発なんて全然やったことないし、やりかたもわからない。だからか、そこそこの実行性能でいいいなら(手動と比べたときの費用対効果で妥協できる程度)、できるんじゃないかと思ってしまうが、そうでもないのかなあ。

いまはマルチコアCPUの群雄割拠で、どんなアーキテクチャを前提にコンパイラを作るかの方向性が多すぎるからというのが原因のひとつであると思う。どれか有力なアーキテクチャが生き残って、それをみんなが使うようになれば、コモディティ化の恩恵のようなものが、コンパイラを生んでくれるんじゃないだろうかとのほほんと思ってしまう。逆に、自動コンパイラが可能なアーキテクチャというものが必要とされるのかもしれない。それはLSを持つCellのようなアーキとか、スタックメモリが実現されたCPUのような、スケーラビリティがだせる、新しいものだと妄想している。

2007年12月16日日曜日

大規模計算

実際に大規模なニューラルネットを組もうと考えてみて、最近気づいてきたことがある。

多少非効率でも、各ノードに同じ仕事を割り振り、局所的に完結するような計算方式にすべきということだ。

普通あたりまえなんだろうけど、今さら気づいた…。こうしておかないと、計算の規模によって、プログラムを書き直したり、効率が異常に下がることになる。

大規模計算のノウハウというのはどういうものなんだろう。IBMとかBlue Brainでどういうふうに計算をさせているんだろう。

ファッキン眼鏡(泣

アイシールド21の27巻が出た。敗者の王城、すごいいい味でてたなあ。もっと強くなっているとセナにいわれて、「そうでなくては困る」といったときの進の笑顔。司令塔としての役目を終え、トイレで一人で泣く高見。うう〜、おれっちも泣きそうだよ。

再戦がみてみたいけど、なんとなくこの漫画はこの大会きりで終わると思うから、無理だろうな。神竜寺、王城、白秋の間の対決も見てみたいなあ。

2007年12月13日木曜日

やっぱCellいいかも

GPUで実際にニューラルネット計算するのに、あのデータをこう移動して、あの演算をこうしてと算段をつけていたら、あらためてCellのスペックが魅力的に思えてきた。

Cellはリングバスの帯域が大きくGPUの4倍近くある。またLSがshared memoryの10倍以上ある。一応、SPE間の同期のしくみも用意されている。どれも大規模ニューラルネットには有利だ。

ネックはPS3のXDRのメモリ量だな。

イッツバンドウィドゥス!

shared memoryをLSのように使うのが推奨らしい。
http://pc.watch.impress.co.jp/docs/2007/0416/kaigai350.htm

shared memoryにしてもLSにしても、メモリのサイズにあわせてどのように計算を分割するかがいちいち面倒。また、圧縮データをどんどん演算したほうがいいのか、解凍したデータをぶんぶん転送したほうがいいのかも、難しい。計算する問題や規模によってそれが変わってくるからまた面倒。

でもCellとGPGPUは大体、同じ計算モデルに収束しそう。アーキテクチャが似てるから当り前か。

しかし、こんな苦労は、いつかスタックメモリが一般にでた時点で無に帰すのではないかと思う。あと10年以内に出るかな?5年くらいででないかな。じっと待ってた方が一番かしこいのかな。

2007年12月12日水曜日

5合目到着

やっとこさ、Block内のネットワークでけた。うれしかー。SPE一個でネットワーク組めたのに近い。まだいろいろ手をいれれるところはあるけど、とりあえずこんなもんだな。

次は実機で、どれだけBlock間の同期がうまくとれるかががんばりところになるな。メモリアクセスレイテンシを計算部分がどれだけカバーしてくれるかだ。

ネットワーク

実機が動かせず、block間で同期が試せないので、とりあえず1block内でネットワークを組んでみた。結構、あっさりできた。しかし…。

shared memoryで、別スレッドが同じ名前で宣言した変数は、別の領域になるのか、同じ領域か?そういえば、global memoryもわかんないな。なんか変なことになってるかも。う〜。

そろそろサンプルを見直す時期だな。

2007年12月11日火曜日

3TFLOPS本当?

次世代nvidiaハイエンドGPUは3TFLOPSという噂をきいた。しかし、誰もヨタ話程度にしか思っていないみたい。たぶんSLIで実現するんじゃないかと思われているよう。

来年の前半にはでるようなので、それではっきりする。その頃には、Grape-DRの話もでてくると思うので、対決になりそうだ。

Grape-DRは500GFLOPSで、汎用計算機より値段は多少高く、ベクトル計算機よりは全然安いらしい。はじめから大規模計算を見越してつくっているから、大規模にシステムを組むのはGrape-DRに分がありそう。大規模なシステムを組むときのコストは、安くつくかも。しかも倍精度もサポートしていて、科学技術計算にはありがたい。ただFPGAをつかってメモリ制御などを行う必要があるのが面倒そうだ。

次世代nvidiaGPUは、性能的にはGrape-DRを越えるのはまず間違いないようで、1チップあたりの性能では、トップになるのでないか?しかし、倍精度サポートが不明で、cudaにまだいくつか問題があり、大規模科学技術計算には?がつく。しかし、しかし、1グラフィックカードで3TFLOPSを越えるような性能がもし実現されるなら、力の差でごり押し勝ちかな。

2007年12月10日月曜日

blockの同期

gpu実機が結局使えず、いまだエミュでプログラミング。
シングルセルは簡単に実行できたので、やっぱり次はネットワークがやりたい。

block間の同期機構がないので、大規模ネットワークは無理かと思ったが、global memoryに同期用のフラグをおけばできるらしいと、ちらっときいたのでやってみた。

結論からいくと、エミュだとできない。エミュのせいなのか?一つのblockが計算終えるまで、ほかのblockの演算をしないので、待ち続け。う~ん。

2007年12月7日金曜日

ネットでの発言

最近ブログでの発言が社会問題になったり、それで解雇されたりということがよくニュースになる。
私はmixiやその他掲示板で、人としてこれは最低限というのは守ってきたつもりだが、それだけでは認識が甘いのかもしれない。
ネットでの情報発信が、どのようになされるかを考えれば、実に明白なことだ。ネットでの情報発信は、基本的に誰もが、いつでも、何回でもアクセス可能である。一方、飲み屋でなされるその場かぎりの発言は、その場に居合わせた人間に、ある瞬間、一回きりである。点か、体積かぐらいに、まさに次元が違うのだ。へたな論文より、ある日のくだらない走り書きがより大きな重要な影響力を持つことは十分ありえるのだ。

それが逆に面白いから、流行ったというのはあると思う。しかし、そのような影響力を認識せず、流行に乗って、ネットで飲み屋の発言をすると大変なことになる。ネットでの発言は、猟銃や車のような危険性を持つ道具である以上、飲酒しての書き込みは犯罪的ですらあるかもしれない。

いまのところ、社会はネットを取り込んでもなお平穏ではある。しかし、いつかネットの自由が社会を混乱させ、ネットの自由を制限しなければならない日がくるのかもしれないと、少し恐ろしい気持ちになった。

2007年12月3日月曜日

8800gtを2枚させる構成

世の中ゲーム目的外で、8800gtを2枚させるようなマザーというのはあまり存在しないんだぜ?
2枚ざしできるPCを探してよくわかった。結局、現実的な選択肢としては、ゲーマー仕様のPCしかない。
8800gt2枚刺しで、電源は700Wのものじゃないとだめらしい。全部そろえて、大体20万くらい。
どうなんだろう。思ったより安い気もするが、やすやすと手を出せる価格じゃないな。

この構成で行くと、約一台1Tflops。20万/1Tflops。結局PS3とあんまかわらんな。

2007年12月1日土曜日

cudaオワタ?2

CUDAには1Grid10秒までという制限があるらしい。
http://exth.net/~ohshima/wordpress/2007/11/15/14/
え~、ほんと?何でそんなめんどくさいことをと思うのだが、nividia的にきっとなんか困るのだろう。

普段、シミュレーションが数時間かかることもざらなので、これじゃ使えねえぞ…。

cudaオワタ?

いまさらながら気づいたんだが、Block間の同期はそもそも取れない。ということは、GPU全体で協調した演算は無理?やばい…。

と思ったのだが、global memoryを使って通信することで何とかなりそうだ。これはCellのDMA転送とほぼ同じような苦労だ。ああやりたくね~。