[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 05/09 18:39 / Filesize : 102 KB / Number-of Response : 423
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ユー!Cellプログラミングしちゃいなよ



1 名前:デフォルトの名無しさん mailto:sage [2006/09/18(月) 14:57:11 ]
並み居るプロセッサより高性能なCell搭載PS3がもうすぐ発売

と言う事はCellプログラミングでスパコンが家庭に

259 名前:209 mailto:sage [2007/02/17(土) 00:02:39 ]
倍精度強化かつメモリ強化(3倍容量)のCELLとか、でても
すんげーたかいんだろうなあ…。

たとえば、65nmのcore 2 quadのXeonなら
倍精度50Gで、たぶん30-40万くらいで買えるでしょ。

強化型CELLは倍精度100Gflopsで100万じゃかえんだろうなあ…。
PS3に乗るわけないしなあ。

260 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 02:24:52 ]
Blue/Gene買うやつはいないっていいたいの?w

261 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 12:16:24 ]
今のcellでも1個で倍精度20Gflopsあるのにね。

262 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 13:40:35 ]
>>259=209
なぜそんなに高くなると思うの?

263 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2007/02/17(土) 14:05:47 ]
PCベースのワークステーションより数が出ないぶん部品は高い。

何が高いって、XDRメモリが高い。
数が出ない云々以前に、RAMBUS利権もあるし。

メモリコントローラがオンダイでXDR-DRAMきめうちだから、FB-DIMMなんかは無理。


264 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 15:18:13 ]
現状でもCellの先にSDRAM繋がってるワークステーションあるのにねぇ。

265 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2007/02/17(土) 15:35:52 ]
ダイレクトに接続できたっけ?

CellアクセラレータボードがXDR 1GB(ダイレクト)+DDR2 4GB(I/Oコントローラ経由)
だった気が。

266 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2007/02/17(土) 15:42:25 ]
まぁそもそもXDRとかFB-DIMMじゃないと帯域が足りないと思われ。



267 名前:209 mailto:sage [2007/02/17(土) 20:54:38 ]
>>262
90nmのIBMCELLサーバーでも200万位するでしょ。それがさらに量産効果が
でにくそうな倍精度強化版CELLじゃあもっと価格がはね上がりそうな気が…。
あとメモリも高いんすね。

100Gflops欲しかったら、PS3を5台買えばいいか。20万くらいだしね。
単精度なら約1Tflops!



268 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 01:59:19 ]
ハード以外のコストを考えなくていい次元に住んでるなら
その方がいいと思われ。

269 名前:262 mailto:sage [2007/02/18(日) 01:59:35 ]
あ,でるかどうかも分からないメモリ強化版のCellの話なのに
高くなると推定するのが不思議だったんで訊いたんだわ
つまり周りがどうなるかの見当が付いているのかな?と

今のCellの単なる倍精度版なら今と同程度かちょっと高い位になると
考えるのが当然だけど

270 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 02:08:17 ]
何が当然なんだか

271 名前:269 mailto:sage [2007/02/18(日) 02:12:09 ]
>>270
何か他の考え方が?

272 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 09:07:09 ]
さてそれでそのPC3で組んだ高性能マシンを何につかっているのかね?


273 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 09:25:31 ]
>>267
出血サービスのPSというかたち以外でCellが庶民の手の届く価格で
販売されることはないというのが普通の考え方だよね。
65nmは倍精度強化版onlyみたいなことになると楽しいんだけど。

C2Dの2.5GHzで20Gflopsあるのに、わざわざPS3でクラスタ組もう
とする貴方はとってもマゾヒスト。

274 名前:209 mailto:sage [2007/02/18(日) 14:19:24 ]
>>272,273
趣味でCELLで大規模な科学技術計算やってみたいなあと思ってんだけど、
冷静にCELLとcore 2で価格と手間を天秤にかけると、微妙なんだよね。

去年は、CELLに対して脳内にかなりお花畑が広がってたんで、何も疑問も持たず
CELLのプログラミングとか勉強してたんだけど、最近のcore 2の性能とシュリンクの
進み具合を見ていると、天秤が今水平に近づいている感じ。

それでもやろうっていうのは、CELLはやっぱいじってると面白いというのと
まだLSの構造にわずかに可能性を感じているというのが理由。あとは手軽に扱える値段かな。





275 名前:209 mailto:sage [2007/02/18(日) 14:35:10 ]
CELLいじるまで細かいレイテンシなんか気にしたことなかったから、
それをいろんなCPUと比べたり、プログラミングに反映させたりするのが
すごく面白かったし勉強になった。

で、いじってみた結果、用途によって、CELLは向き不向きが激しいことがわかってきた。
倍精度ではCore2と価格性能比が倍くらいしか違わない。


276 名前:デフォルトの名無しさん [2007/02/18(日) 16:24:51 ]
某板よりコピペ
多数のオブジェクトの衝突判定を並列化する方法


移動後の座標をボクセルに振り分ける。
1つのボクセル内に存在するキャラを総当たりで衝突判定。

処理の順序としては、移動、振り分け、衝突判定、衝突処理。
これで処理を並列化できる。

もう少し詳しく言えば、衝突判定をしやすくするために、
ボクセルに振り分ける時点で座標値などをボクセルごとの一時バッファに複製しておく。
これにより巨大なバッファをLSにロードする必要がなくなる。

衝突の連鎖については次フレームに回す。それで結果的には再帰処理になる。

普通は移動後に振り分けるというより
ボクセル内のオブジェクトを管理するバッファを常設しておいて
移動でボクセル外に出たときだけバッファの更新をするでしょ。

277 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 16:31:41 ]
ダンゴの人のブログにも書かれてるけど、Coreなどは汎用で性能が出るからな。
SPEはタイト過ぎるから、用途派生のCPUを作ってくれなきゃ中途半端で手が出ない気がする。
それはそれで、また別の問題が……



278 名前:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6 mailto:sage [2007/02/18(日) 16:45:08 ]
正規表現エンジンのSIMD実装の論文とかってないよね?
なんつーか、オートマトンを順番に辿っていくような処理はベクトル演算は不向きっつーか
分岐が致命的に痛い。

279 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 16:55:48 ]
しかしゲハと何も変わらん雑談スレだな

280 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 21:13:52 ]
>>279
そう思うならこのスレ来ないほうが君のため。

281 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 23:17:13 ]
>>275
論文書きたいならCell。
Cellでこんなこともできました、こうやって速くしました、で論文になるよ。
科学技術計算の結果の方が必要なんだったらCore2のほがいいかな。

282 名前:209 mailto:sage [2007/02/18(日) 23:53:40 ]
>>281
Cellでやっただけで論文になるというのが、そんなんでいいの?って気が
はじめはしてたんだけど、最近成り立ちそうな気がしてきました。

たとえばニューラルネットの話だけど、コアにどのようにユニットを割って
どのような通信をさせるかというのは、以外に簡単じゃない。

結合がないユニットを担当するSPE間では通信の必要がない。また結合があるユニットは
同じSPEで計算させたほうが情報を共有できていい。でも各SPEはなるべく同数の
ユニットを割り振るほうがいい。

これを決めるにはCellのアーキテクチャが関わってきて、同じマルチコアでも
たとえばcore 2だと状況が変わってくると思う。めんどくさくもあり、面白くもあり。

こういうことが実行するプログラムによっても、パラメータによっても変わってくる。

283 名前:209 mailto:sage [2007/02/18(日) 23:55:45 ]
まあもうそういう議論はしつくされてるかもしれないけど、実機で実際に
それを試してみるというのは意味はありそうですな。

284 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 03:10:34 ]
>>274
そうそう、やっぱCELLはいじってて面白いんだよ。

ヘテロコアの可能性も感じるしね。
CELL自体が商業的に成功するかどうかはわからないけど。


285 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/19(月) 04:46:29 ]
商業的には既に終わってるぽ
www.vgcharts.org/

いや俺も買ったんだけどさ。マゾだから。

286 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 12:34:54 ]
終わってると言うよりまだ始まってない感じ

287 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 15:35:47 ]
始まってないことを今は終わってるって言うのか?



288 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 18:00:20 ]
>>278
正規表現をSIMDで効率的に動かす方法か。
4並列の手動投機実行みたいな事は出来ないのかな。

289 名前:デフォルトの名無しさん [2007/02/19(月) 21:22:04 ]
CPUの寿命は10年単位でみないとわからない。
お前にはそれがわかってない

290 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 22:55:16 ]
25年は基本アーキティクチャを変える必要がないと豪語したAlphaは...

291 名前:209 mailto:sage [2007/02/19(月) 23:11:51 ]
>>289
cellの命運を決めるものは、なんになるだろう。

自動並列化コンパイラが完成したら、cellは成功するだろうか?

PS3がPS2並に普及が必要だろうか?

cellのアーキテクチャがすでに成功を決定付けているだろうか?またはその逆に
失敗を決定付けているだろうか?

cellの家電搭載化が必要だろうか?

linuxでのcellのppeとspeのフル稼働化、エコシステムの構築が必要だろうか?

292 名前:209 mailto:sage [2007/02/19(月) 23:14:02 ]
個人的には、PS3の高スペックlinuxパソコン化が、かなり需要があって普及の手助け
になる気がする。5万円でハイスペックで、Blue ray付きのPCがかえるとなったら
mac並に選択肢にはいるんではなかろうか。RSX&メモリ開放とSPE活用さえできれば、
実現できそうだけど、ありえないのかなあ。

293 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 00:55:40 ]
Linuxインスコできるようにしたのは快挙だと思うんだけどSCEはそれを全然前に出さないんだよね。
なんか裏ワザっぽい扱いのままで。もったいない。

294 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 01:00:22 ]
Linux前面に出して本体が売れても、ゲームが売れなきゃ赤字が増えるだけだからな。

295 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 01:07:56 ]
結局、SPE を使った実用的or面白いソフトってあるのか?

296 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/20(火) 01:15:58 ]
将棋とかのAI組むにはCellってどうなんだろうね
そういうゲーム出てきてないけど
定石をBDメディアに大量に入れておいて探索するだけ?それじゃつまらんな。


297 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 11:37:30 ]
CELLプログラミングって、ClearSpeedのプログラミングと似たところがあるんだよね。
ClearSpeedのコンパイラ自体は使い物にならないんだけど。



298 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 18:36:14 ]
メモリが少なすぎるからなぁ。せめて倍はつんで欲しかった。 
単純なCPUでメインメモリの多い箱○にインスコした方が性能でるだろ。


299 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 19:11:48 ]
>>298
何をするのかによるのでそれは言い難い。

300 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 21:24:49 ]
>>296
向いてるような向いてなさそうな...どうなんだろ?

分散して同時並行して調べることができるなら
単一のCPUつかうよりも深読みとかできそうだ

将棋とかのルールに沿ってコマを動かすって
けっこう細かい if がつらなると思うんだけど
そういう処理って Cell は苦手そうだし

あと同じような局面で過去にあったかどうか調べるのに
メモリがたくさんいりそう

どれもプログラムの作り方次第かもしれないが


301 名前:デフォルトの名無しさん mailto:sage [2007/02/20(火) 22:31:40 ]
整数条件を外した緩和問題をうまく構成して悪手を枝刈りしまくる、
という方向なら結構いけるかも?

302 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 01:35:16 ]
Cellで将棋はネタとして検討してみたが、本読んだり、Bonanzaの話を見ている
限りだと、Cellを使っても爆発的な強さは得られないように感じた。
計算量増えたところで読める深さはたかがしれてる。
現状だと、棋譜からDB構築も含めた質の良い評価関数の作成の方が効果は高そう。

>>301
去年の将棋大会で(初出場で)優勝したBonanzaは枝刈りしていないらしい。

ちなみに、ソースも公開されてる。これをCellに落とし込むだけならそんなに
難しくないと思う。コンピュータ同士で対戦させるためのプロトコルも
定義されているから興味のある人は調べてみるといい。


303 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 01:38:57 ]
でも、やる価値が無いとは思わないよ。
これで飯食えないかなー?と真面目に検討した結果、計算量によって
圧倒的な強さを得るのは難しそう、と感じただけ。

リバーシの感覚で気軽に考えたのが甘かった。

304 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 02:08:14 ]
>>303
将棋はチェスよりも難しいぞ・・・

305 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/21(水) 02:32:48 ]
取った駒を置けるからチェスよりも計算量が莫大になるんだよな。

306 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 02:38:33 ]
>>305
あと、駒をひっくり返すか返さないかも

307 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 16:59:13 ]
口を開けば「セルが……、セルは……」と話す男がいた。www
news22.2ch.net/test/read.cgi/gamenews/1172023681/



308 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 17:05:36 ]
ゲハの空気の読めなさは流石隔離。

309 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 10:28:40 ]
ゲームニュースでないの?

310 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/22(木) 23:13:28 ]
>>306
実質、不成を選択できるのは香と桂と銀だけだけどな。
香と桂は次に動かすときには必ず成らないといけないからさほど状態爆発はしない。
銀は敢えて成らないのも戦法としてある。



311 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 01:57:27 ]
後の打ち歩詰めを避けるための不成りってのも(理論的には)有るから
他の駒でも常に成ると決めてしまうわけにはいかない

312 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/23(金) 02:26:23 ]
プロでも不成は対局でけっこううっかりやるね

歩はならなかったら成らなかったで前に1ますしか進めないから状態は増えないな。
飛車角も同じ。成ると動きが増えるが、成らなかったからむしろ動きの可能性が収束するだけ

ちなみに成らないと次に動けない位置に達したら確実に成らないといけないし
そういうところに打つのも駄目。反則負けになる。


やっぱり銀だね。成るか成らないかで戦局が大きく変わることがある。。




313 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 12:49:39 ]
飛車角は成らない理由ある?
歩の「打ち歩詰めを避ける」ってのもよく判らんし。

314 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 14:55:22 ]
歩に限らんだろ
手持ちが歩だけで、
最後の一手で歩を打って詰みになってしまうとき
わざと成らないで逃げ道作って詰めるときはある

315 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 17:03:59 ]
>>312
団子は探索型のプログラム書いたことないの?
飛車だろうが角だろうが成る/不成で状態数は増えるぞ

316 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/23(金) 17:56:34 ]
>>313
羽生氏ですら稀にあるよ。
うっかりだとか、裏返す暇がなかったとか。反則にはならない。

古畑任三郎のネタであったな。
後一手で飛車成で勝負が決まるところを
飛車の裏に被害者の血痕がついてたがために
別の方向に動かして・・・・

成らなかったところで動きが増えないだけだからむしろ状態は絞られるだろ

317 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/23(金) 20:15:38 ]
>>314
それは突き歩詰めと言う奴では?
べつに、と金になったら詰めないわけじゃないだろ。

うっかり二歩のほうがむしろ怖い



318 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 23:15:41 ]
駒の種類として「歩」と「と」は区別する必要があるから状態数は増える
(局面の状態=駒の種類と位置)
あそうか.将棋のルールを知らないんだw

319 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/23(金) 23:22:14 ]
コンピュータ将棋で成らないことを仮定する必要なんて無いじゃん
桂・香・銀以外は不成のパターンは無視していいに等しい

320 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 23:28:50 ]
そんな風に仕様を勝手に断定するからバグが(ry

321 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 23:40:23 ]
将棋プログラムはそれはそれで面白いんだけどさ
今の流れはあまりに Cell と関係ないような

一般的な将棋プログラムの話ならこっちだと思う

おまいら最強の将棋プログラムしてみろよ part5
pc10.2ch.net/test/read.cgi/tech/1109307327/


322 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/23(金) 23:46:12 ]
>>320
だから、成れば動きが増えても減らない駒で自ら不成として可能性を狭めても
自分のクビをしめるだけで相手に弊害はない。むしろ手が絞り込めちゃう。
「と金」をとろうが「歩」をとろうが持ち駒になるのは歩だしね。

俺が知る限りではコンピュータ将棋で不成を選択できるのは3種類だけだよ。


>>321には胴衣

323 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 00:44:16 ]
AHO 相手の手の合法性のチェックはどうやってするんだ?

324 名前:・∀・)っ-○◎● ◆DanGorION6 mailto:sage [2007/02/24(土) 02:25:40 ]
動きそのものは桂馬・飛車・角よりもナイト・クィーンのほうが自由度高いしね
将棋も持ち駒うてなかったらおそらく解法はチェス同等かそれより簡単になるとオモ

325 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 02:29:41 ]
>>324
それは将棋というゲームのルールですかという疑問

つか、将棋の話はストップ 続きは>>321で。

326 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 02:55:21 ]
馬鹿にかまってスレを無駄に消費するより
NG登録しましょう


327 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 01:59:16 ]
表か裏かの情報なんてせいぜい1ビットのフラグで表せるし、その程度の
情報が増えるくらいのことを状態爆発とは言わない

どんだけ効率の悪いコード書いてるんだよ



328 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:04:28 ]
いやフラグとか記述方法とかそういう問題ではないんだけど、ひょっとしてプログラムとか書いた事ない?

329 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:10:33 ]
いやそれはお前だろ
たとえば歩を成らずに進める可能性を考慮してどれだけ状態が増えるんだよ
前にしか進まないだろ

330 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:44:09 ]
マジで逝ってるのか…

331 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:47:23 ]
それともお前の脳内ルール上の歩は斜め後ろにでも移動できるのか


332 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:48:49 ]
だからそういう問題じゃないって…

333 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:52:26 ]
たとえばRPGのキャラクタは経験値という状態を表すだけで16777216種類のデータが必要か?
それがわからないならプログラム向いてないよ。



334 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:57:48 ]
だからデータ量の問題じゃないって…アルゴリズム計算量が見積もれない方がよっぽどヤバイと思われ

335 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 02:59:41 ]
327はこの手のプログラムを書いたことが無いんだよ。

336 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:04:20 ]
アルゴリズム計算量が、歩を成らずに進めた場合を想定すると、しない場合に比べて
どれだけ上がるのか説明してみてくれ

337 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:17:09 ]
所詮口だけか(笑)




338 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:25:06 ]
自分がアホなこと逝ってる所為だとは思わないのか
FSMを構成してみればわかるだろが

339 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:34:19 ]
真性アフォがいると聞いて飛んできました。

340 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:40:55 ]
歩ってかならず成らないとダメじゃなかったっけ?

341 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:48:35 ]
ダメじゃない
ただ歩は成っておいた方が状態数(選択肢)が増やせるし、成った事によるpruningも発生しない

342 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 03:55:08 ]
わかってるじゃないか。
成らない可能性を考慮しようがするまいが大して状態数は増えないんだろ結局。

343 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:03:23 ]
個々の駒の動き自体は元々チェスより少ないくらいだ
持ち駒という概念が状態数を爆発させる最大の要因であって
成って損のない駒が成るか成らないかなんてことに拘る方がアホ


344 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:10:06 ]
なんか成りあがれるのが歩だけだと思ってるのか、このアホは?

345 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:17:58 ]
成らないほうがいいこともある駒は銀桂香くらいだが?
駒の復活による計算量の爆発に比べれば遙かに小さい

見積もりも出来てないのはお前だろアホ


346 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:23:41 ]
>駒の復活による計算量の爆発に比べれば遙かに小さい

だから何?

347 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:24:50 ]
チェスのQueenよりも表裏の2状態がある飛車や角の方が
とれる動き方の状態が多いとが本気で思ってそうだなこの馬鹿




348 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:29:35 ]
飛角歩を不成とするようなのは最初から定石パターンからは除外される
素人はこれ以上反論しても無駄だからオムツ替えて寝ろ


349 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 04:45:06 ]
駒の動かし方しか考えてなさそうなんだけど、もういいや寝るよ

350 名前:デフォルトの名無しさん mailto:age [2007/02/25(日) 04:56:38 ]
GKの内ゲバスレはここですか?

将棋の探索アルゴリズムを本当に複雑化させてるのは持ち駒を打つとき。
持ち駒というやつは盤上の空きのどこにでも打てる(歩・香・桂馬には若干の制限がある)
盤上の駒を動かすより遙かにオーダに大きい。
成ると駒の動き方が変わることなんて問題としちゃ小さい小さい

351 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 05:14:26 ]
チェスは駒がどんどん減っていくから次の手はどんどん無くなっていくし
オセロも置ける場所が減っていく。白黒合わせて60手までで必ず終わる。

将棋は局面が進んでも盤上に取った駒を復活させることができるからなかなか収束しない。
だから将棋のアルゴリズムは、定石パターンと照らし合わせて絞り込むことが重要になる。

愚直に総当たり検索なんてやってたらいくらリソースあっても足りない。
削れる枝は大胆に削るのが鉄則。

表か裏かでいちいち状態数云々考える時点でアルゴリズムのセンスなし。


352 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 05:17:18 ]
そんなこと以前にSPE+LSじゃ探索なんて出来ねーよ。
既存のソースは使い物にならないし
かといってPS3向けに最適化する暇人もいないだろう。

353 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 05:39:08 ]
結論:みんな口だけ

354 名前:デフォルトの名無しさん [2007/02/25(日) 05:51:29 ]
PPE単体でもCele600MHzくらいのパフォーマンスは有りそうだし
少ないとは言っても200MBくらいのメモリは使えるんだし
PCの数年前の将棋ソフトくらいに匹敵する強さにはなるだろう。

355 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 11:35:29 ]
>>352
まぁ考え方は根本的に変えなけりゃダメだろうな。
たとえば局面評価にしても、ここがこうだから何点などという手続き的な
やり方じゃなく、ひとつの評価関数(どんな複雑なものになるかわからんが)に
落とし込んで、整数条件を緩和して上界を求める、とか。

356 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 14:07:48 ]
そこでモンテカルロ将棋ですよ

357 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 19:54:50 ]
やっぱりここは最良優先探索だろう
PPEでキューを管理して
SPEで次のノード探索タスクを並列して実行すれば
幅も深さも適当な探索ができる気がする



358 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 00:44:12 ]
将棋も将棋のソフトも全然わかんないんだけど、演算速度が例えば100倍早いと
つよくなるものなの?処理に使える時間が重要?覚えておくパターン数が重要?

359 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 02:55:03 ]
思考時間が無限にかかるCPUは最弱といわれるだろうから
当然短時間でより多くの処理ができる方が強いということになるだろうな。

まあメモリ640kbのZ80マシンでも将棋ソフトは作れたんだしなんかは作れるだろ。

360 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 04:26:30 ]
ちょっとまて
普通の将棋には制限時間というものがあるお

361 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 04:57:44 ]
そうなんだ。ググレカスです。わたしは。

362 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:56:43 ]
普通の将棋ってのが公式のなんかルールですかね。
時間制限ありでやったことはほとんどないんでわからんですよ。

363 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:54:22 ]
第17回世界コンピュータ将棋選手権 ttp://www.computer-shogi.org/wcsc17/
の場合「持ち時間は25分とする」とルールに書いてある

364 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:58:27 ]
世界コンピュータ将棋選手権に PS3 で参加!とか格好いいな

365 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 04:35:48 ]
それで優勝したらもう大変

366 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 04:49:23 ]
次スレは将棋板でおk?

367 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 05:45:45 ]
CellがintelやらAMDやらのCPUに将棋で勝ったら、もう失敗作だとゲハで
叩かれないですむだろうか(涙)



368 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:18:14 ]
ゲハがいくら頑張ってもここの連中には効かないというか
そんなところに当たり判定は無いというか。

369 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 10:28:54 ]
頑張って俺様スパコンしてるのだろうから、あまり可哀想なこと言うなよ。

370 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 02:29:37 ]
同じプログラム使えばより強くなるんでは。8コアだし。

371 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 03:40:05 ]
SPEはそれなりに考えて組まないとパフォーマンスを発揮できないが、Core2辺りだと
Intelコンパイラ使って何も考えなくてもパフォーマンスが得られることもあるからなぁ。

372 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 08:30:47 ]


373 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 11:45:30 ]
共有メモリじゃないからマルチスレッドと言ってもコードは大違い<CELL

374 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 16:59:30 ]
マルチスレッドは普通メモリ共有してるものだけを指すんじゃね。
奇天烈なCellプログラミングは最早マルチプロセスだと思う。

375 名前:デフォルトの名無しさん [2007/03/01(木) 01:11:17 ]
すげーガイめっけ
moss.csc.ncsu.edu/~mueller/cluster/ps3/

376 名前:ps3cluster mailto:sage [2007/03/01(木) 01:38:35 ]
さて、ps3クラスタをのんびり〜つくリはじめてみようと思います。
目標はクラスタで大規模数値計算。
計算はニューラルネット。単体で動かす分は大体できた。



377 名前:ps3cluster mailto:sage [2007/03/01(木) 01:46:15 ]
ニューラルネットを作るのもいろいろ、紆余曲折がありました。
一番やっかいだったのはコア間の同期と通信。
送ったはずなのにたま〜にとどいてなくて、悩んで数日。
メモリの一貫性(というのか?)を身をもって体験しました…。



378 名前:ps3cluster mailto:sage [2007/03/01(木) 01:56:18 ]
他にもいろいろ面白いことが。
最適化の作業ってはじめての経験でしたが、ループアンロールというのを
やってみたところ、ある部分ではもんすごいはやく(大体8倍)なって、びっくり。

あとどうしてもスカラで分岐でしかかけないところがあって、やっぱり遅くて
ここも将来何とかできないかなあとは思ってます。

379 名前:ps3cluster mailto:sage [2007/03/01(木) 01:58:55 ]
さてPS3クラスタ。
まだ2台目すぐには買えないので、ゆくっりとプランをねります。
とりあえずMPIで通信、gigabit eatherでつなぐと。
クラスタ作るのも初めてなんですが、gigabit eatherのMPI通信のレイテンシは
普通100μs位らしく、まあなんとかなりそう。
でもあと半分くらいになってくれたらうれしいなあ。ちょっと手を入れると
早くなるそうだけど、ど素人なのでいつかできたらね。

380 名前:ps3cluster mailto:sage [2007/03/01(木) 02:05:12 ]
そこでちょっと気づいたが、MPIやるとしたら、基本的にPPE間で通信して、
それをSPEにさらに送ることになるだろうということ。
ということは、通信する必要があるデータは、PPEに集めてそっから別PS3に
おくらにゃいけません。
今はPPEは全然使ってないんで、書き換えねばならぬ。失敗した。

381 名前:ps3cluster mailto:sage [2007/03/01(木) 02:12:20 ]
そこの書き換えと、MPI用PPEコードをちょっとづつ勉強していこう!
あとPS3のおき場所と電源を考えねば…。安く売ってるとこも探そうっと。

382 名前:・∀・)っ-○◎● mailto:sage [2007/03/01(木) 02:13:56 ]
中古の良品が45000円切ってるよ

383 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 04:53:11 ]
>>381
PPEにお仕事ができて丁度いいじゃん。普通に書こうとするとPPEに仕事させないのが速いから
どうしてもPPEが遊びがちになるから。

384 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 05:04:37 ]
>>381
HP公開マダァー?

385 名前:ps3cluster [2007/03/01(木) 23:48:22 ]
>>382
当初に比べると安くなったなあ。あと65nm版がでることを願っているが、半年はかかるかなあ。
>>383
PPEはSPEのMFC的に通信で単独に動けるから、クラスタではうまくはまりそう。
>>381
HPないよ。

386 名前:ps3cluster mailto:sage [2007/03/01(木) 23:59:49 ]
うお、あげてしまった。

計算とレイテンシについてかんがえて見た。
大雑把にみて、PPE間の通信が例えば100μsの場合、SPEでデータ転送が必要になる間隔が100μsなら、
PPEが転送してる間にSPEに計算させることで、通信のレイテンシを隠蔽できる。
ほんとは、通信が待ってからじゃないと計算できないはずだけど、ニューラルネットの場合
そこが融通がききます。

387 名前:ps3cluster mailto:sage [2007/03/02(金) 00:06:34 ]
ps3一台のときに、同じレイテンシの隠蔽をSPE間の通信でやろうとしたら、
SPE間の通信速度があまりに速くて、隠蔽するまでもなく通信が終わってから計算しても
十分早いという結果になった(SPE間の通信のレイテンシは2,30ns程度)。



388 名前:ps3cluster mailto:sage [2007/03/02(金) 00:19:47 ]
現状でSPEの通信が必要になる間隔は60μsなので、ちょっと足引っ張られそう。
SPEにもっと重い計算をさせ、通信間隔が伸びるようにすれば一応、解決になる。
実際にMPIでどれだけレイテンシが発生するかまだわからないので、とにかくつくって
はかってみてから、調整しよう!


389 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 17:59:57 ]
ガンバレ。期待している。

390 名前:・∀・)っ-○◎● mailto:sage [2007/03/03(土) 19:40:42 ]
YDL糞重いってレベルじゃねーぞwwwww


391 名前:・∀・)っ-○◎● mailto:sage [2007/03/03(土) 23:23:24 ]
John the Ripperそのまんま動くね。当たり前だが。
まだPPEだけだけど。

2スレッド動かさないとピークでないっぽいので、MPI対応パッチ当ててみるか。

392 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 01:04:27 ]
SPU使ってみたんだが、SIMDに向かない処理をどう高速化するかが課題だな
ビットストリームで切れ目が無いものをビット単位に処理するとか。


393 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 09:59:50 ]
>SPU使ってみたんだが、SIMDに向かない処理をどう高速化するかが課題だな
んなこたない
Cellに向かない処理はCellでやらなければいいだけの話
なんでもかんでもCellで出来ないかとか妄想するから
ヘッポコCPUの烙印を押されてしまうんだと気がついた今日この頃

394 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 10:19:37 ]
>>Cellに向かない処理はCellでやらなければいいだけの話
なんかそれも違う気がする
得意じゃないのであって、出来ないわけじゃない
ペナルティがあったってやらなきゃいけない事はやらなきゃ。
(アクセラレーターがあるわけじゃあるまいし

395 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 11:06:51 ]
言い方が悪かったか。
ペナルティはあるが、複数のSPUで任せたほうが早い場合、ネックになる部分を
どうするかでさらに高速になるかという話ね。
時間がかかっているところに重点的に手を入れるのは常套手段だし。
PPUでやろうと思ったが、SPUに処理を投げているだけなのに意外とあき時間が無いんだよね。
現時点ではデータ分割で100個に分割したとして、5個のSPUに20個筒一気に投げると
先に終わったSPUの遊び時間が長くて無駄。1個筒投げる方がいい。
最初に半分SPUに投げて、PPUで1個やって、残りを終わったSPUに1個筒なげるとやっても、
結果としては早くならなかった。

396 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 11:48:25 ]
>>395
何か根本的にずれてるよ、
そんな歪な最適化してどうする。

397 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 12:32:08 ]
>>395
> 5個のSPUに20個筒一気に投げると
> 先に終わったSPUの遊び時間が長くて無駄

分割した各データの処理にかかる時間がバラバラってことか。
とりあず、その文章だけだと何が悪いのかこちらに伝わらないので、
まぁ、とりあえず同じデータに対して PPU でやったときにかかる時間と、
SPU に投げて処理させて帰ってくるまでの時間を計測して、
何がボトルネックなのかを解析した方がいいと思われ。

SPU は DMA 転送に掛かる時間と SPU 上の計算時間を別にプロファイル
とるといいよ。



398 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 20:20:39 ]
プロファイルは片っ端から取ってるけどね、
SPU内部に限っていえば、DMA転送やメールボックスなどといったシステム側?
の処理は1%ぐらいの割合かな。SIMD化が難しいところが半分以上の時間を食っているので
その辺をどうするか次第かなと。

通常のスカラー演算と条件分岐の組み合わせの多さが問題なのかなと。
分岐予測コードも入れてみたが入れたほうが遅くなった。

PPU側からはメールボックス経由でSPUをキックしているが、RunCntlチャンネル
で実行自体を制御したほうがいいのか、アトミックDMAでメモリ監視がいいのか
まだまだテストすることは多い。

>>395
kwsk

399 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 21:10:12 ]
日経エレクトロニクス 2006年12月4日号に東芝とフィックススターズの人が
Cellのプログラミングについて9ページほど書いているのは既出?

SPE内部では条件分岐は算術処理に置き換えるべきなんだそうな
(分岐予測が外れると18サイクルのオーバーヘッド)
あとはTimingTool(プロファイル計測)を解析してパイプライン・ストールをなくしたり
2命令を同時発行する頻度が高くなるように命令を並び替えたりすること。

PPE側の処理が間に合わないのはデータをキャッシュして使い回していた
(サンプルプログラムは7万ポリゴンのレイ・トレーシング)

400 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:55:09 ]
timingツールで解析結果は眺めたけど、特に手を入れるところはなさそう。
この辺はアンロールしておけばコンパイラがある程度はやってくれるらしい。

算術処理で置き換えるのは分岐内が簡単な計算の場合で分岐失敗コスト以上の
処理が必要な分岐はやっぱり分岐のほうがいい。分岐の除去はGPUで経験済み。
ストールもほぼおきていないが、順次データを計算して使っていく個所では
仕方ない個所も多いかなと。

例えばビットストリームからデコードするとき最大16ビットで最大16段階の分岐は
8ビットテーブル3つで最大3回の分岐に減らしてはあるが、これを16ビットテーブル化すると
128KiB使用するのでとても作れない。

このスレのリンク先を読んで基本的な知識を身に付けてる感じです。
日経エレクトロニクスは読んでないので、ちょっと探してみます。
バックナンバーは図書館かなぁ

401 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 14:35:39 ]
>このスレのリンク先を読んで基本的な知識を身に付けてる感じです。
嘘でもいいからこのスレを読んで、と言ってやれよ

402 名前:・∀・)っ-○◎● mailto:sage [2007/03/06(火) 00:35:22 ]
正直メモリ空間独立がここまで厳しいとは思わなかった。
Xbox 360で動くLinuxとかのほうが、あったら幾分か楽だろーね
モニタにも困ること無いし。



403 名前:デフォルトの名無しさん mailto:sage [2007/03/06(火) 02:30:31 ]
最初から躍起になってLSで納めようとしない方がいいよ。
まずはコードサイズ抑えて、データは全部DMA経由でも動きゃいいって。

最適化なんてボトルネックが分れば自然と出来るもの。

404 名前:デフォルトの名無しさん mailto:sage [2007/03/06(火) 03:16:30 ]
>>402
だが、このストイックなまでの縛りがいい。
趣味でいじってる分には。

405 名前:デフォルトの名無しさん mailto:sage [2007/03/06(火) 06:40:26 ]
>>401
ここで応用を(略

cag.csail.mit.edu/ps3/lectures.shtml
とか現在見てます。

406 名前:デフォルトの名無しさん mailto:sage [2007/03/06(火) 12:16:32 ]
ゲーム産業開発者のためのスキルアップ講座
www3.stream.co.jp/www11/jinzai/20070301/03/index.html
www3.stream.co.jp/www11/jinzai/20070301/04/index.html

これの、特に後者を読むべし。チューニングには必見。

407 名前:・∀・)っ-○◎● mailto:sage [2007/03/06(火) 23:02:22 ]
そろそろRSXのシェーダ使わせろと(ry




408 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 00:08:26 ]
ここはCellプログラミングスレ

409 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 00:41:51 ]
<backOfChirashi>
X86のプログラムをPPEに移植してみた。
入力値はバイナリデータを転送して実行……
うぁはは、エンディアンが違ってたぜ。
速度的には、PPEだけじゃ話にならないね。
</backOfChirashi>

410 名前:・∀・)っ-○◎● mailto:sage [2007/03/07(水) 01:04:48 ]
PPEの性能自体はG4以下なんだよな

411 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 01:11:17 ]
>>410
実際にゃSPEの管理までやっとるからな 働きもんだz

412 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 01:12:25 ]
>>406
これ聞いていると SPURS を公開してほしくなるな。
libspe で書いてると、他の SPU モジュールと協調できないのが悲しい。

413 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 01:47:58 ]
公演聞いてて思ったけど、LameとかH.264はSPURSで実装すべきだよな。

414 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 05:51:42 ]
IBMのひとは声に聞き覚えがあるな。Sonyの人のはSPURSの説明だし、
IBMのブレードサーバやボード、東芝のリファレンスキット、
PS3開発機とPS3LinuxでSPE管理ライブラリはそれぞれ違うだろうし、なんとも。
それでも、説明を見ていて、処理割り振りの新しい方法を考えついたので試してみるかな。

415 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 09:57:58 ]
>>409
あれ? エンディアンは両方対応じゃなかったっけ?
後藤のクタタンとのインタビューでそんなの見た記憶があるんだけど。

416 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 11:14:01 ]
今CBEハンドブック見たけどBigEndianだと書いてあった。
ついでにビットは上から数えると書いてあったのも見つけた。

417 名前:デフォルトの名無しさん mailto:sage [2007/03/07(水) 12:22:09 ]
そうか、うろ覚えで発言するものじゃないな。
それだけだと何だから、ググってみたらこんなの出てきた。
ttp://pc.watch.impress.co.jp/docs/2005/0615/kaigai190.htm



418 名前:416 mailto:sage [2007/03/07(水) 12:48:12 ]
お、あったあった。こいつのことだな。
>Load Double Word Byte Reverse Indexed X-form.

419 名前:デフォルトの名無しさん [2007/03/08(木) 06:46:48 ]
>>406
早起きしたので見てみた。
要するにSPURS使わない開発は無いな。

420 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 07:32:14 ]
エンディアン変換ってAltiVecのvec_permとかじゃだめなのかな?
SPUにも同じ命令あるし。

421 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 11:15:34 ]
SPURS公開されないのかなぁ?
あの公演聞くかぎりCellプログラミングでは必須のようだけど。

422 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 21:09:04 ]
今日読んでた資料によると32bitの積はコストが高いらしい。
Cで書くとかってに格上げされて32bitの積になるんだろうか?






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<102KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef