ユー!Cellプログラミ ..
[2ch|▼Menu]
113:デフォルトの名無しさん
06/12/19 23:05:20
>>112
C++でしかも、SSE2アセンブリで書き直したバージョンでもこうらしいよ。

78 :67:2006/12/19(火) 08:34:31 ID:7kKm0jbR
(>>76 続き)
PC : Pentium D 930 (2.66GHz) / 2GB Memory

このとき、結果がこんな感じだった。
PS3 : 1.87sec
PC : 57.32sec

比率(速度比のみ) = 30.65 : 1
比率(同クロック) = 25.48 : 1

ってとこか。結構速いねぇ。
# つーかC#が遅すぎる訳だが。

114:デフォルトの名無しさん
06/12/19 23:10:51
アセンブラで手書きが偉いと思う。先駆者の資格があるよ。

スレリンク(linux板:72番)
72 名前:login:Penguin[] 投稿日:2006/12/19(火) 01:09:42 ID:MFKqYgcJ
67氏には是非頑張ってもらいたい。
俺はSSEのアセンブラなんか書く気にならねーよ。なんだかんだいって
手を動かすヤツは偉い。と思う。
まあPS3なんて当分買えんけど。


同意。同意。

115:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/19 23:22:37
>>113
ソース読むまでは何とも言えんな。。。
NetBurstも結構コツが要るし。
まあPenDじゃCellの浮動小数のスループットには及ばないかもしれないが。

116:デフォルトの名無しさん
06/12/19 23:43:29
LSの空きメモリってどこで調べるの?
もしくはロードしたプログラムのサイズが得られればおおよその空きが分るんだけど

117:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 00:42:36
プログラムコードのサイズなんて
コンパイル時点でわかるだろ

しかも1命令4バイト固定だし



118:デフォルトの名無しさん
06/12/20 00:46:43
オブジェクトのサイズで見積もってるけどね。
実行バイナリは300KBもある罠。

119:デフォルトの名無しさん
06/12/20 01:19:29
heapサイズ取得とかは?

120:デフォルトの名無しさん
06/12/20 22:19:29
Cellスレとは思えないぐらいレベルが高い
さすがトップガンの本物の実力を見たぜ

121:デフォルトの名無しさん
06/12/20 22:31:24
>62
規定課題には学生しか参加できないんだな。
そんな制限要らないと思うがなー

122:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 22:44:58
SPEって7〜8個あるのに6つしか使えないんだな


123:デフォルトの名無しさん
06/12/20 22:45:18
>>122
それPS3の基本。

124:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 22:49:13
SPEは8個搭載します

実際に動くのは7個だけです

使えるのは6個だけです

('A`)


ドラクエ発表以降店頭在庫がちらほらとか
ところで、中国が買いあさってるって、別の意味でヤバくね?

125:デフォルトの名無しさん
06/12/20 22:52:55
とりあえずPS3はダウンロード位別スレッドでやるべきだと思うんだよ

126:デフォルトの名無しさん
06/12/20 22:53:16
もう転売には適さないPS3だからNDS辺りに移動するんじゃね?
つーかCellの話に絞ってくれ。買い占め論はゲハでやれ。

127:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 23:05:25
ヒント:北朝鮮はアレはもう自滅を待つだけだが中共はヤバイよ


つーか、個人で使えるCellマシンが実質PS3一択だし。
そりゃ100万とか200万とかかければもっとメモリとか載るだろうけど。

128:デフォルトの名無しさん
06/12/20 23:07:56
>>127
キミが言いたいことは、たぶんキミより分かってるが
ゲハか政治でやってきてくれ。
中共ネタでなく、技術ネタのスレだ。
Cellの技術論やプログラミングの話以外は見たくない。

129:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 23:16:54
LSからのロードがレイテンシ6、ビット論理演算ですら2なんだけど、コンパイラの最適化MAXでどんくらいアンロールするもんなの?

130:デフォルトの名無しさん
06/12/20 23:33:55
サンプルコードくれれば試す

131:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/20 23:39:37
とりあえずこのへんヨロ
URLリンク(www.intel.co.jp)

とりあえず俺は今からVirtual PC上にFedora入れる
(Windows版シミュレータ作れよなー)

132:デフォルトの名無しさん
06/12/21 00:20:13
エンディアンが違うからか結果が異なるけどいいか?

133:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
06/12/21 01:04:46
エンディアンの違いが出るような処理だったっけ?
むしろIntelインラインアセンブラ要求するところがあるのが気になったが

134:デフォルトの名無しさん
06/12/21 01:12:20
アセンブリは時間計測とかだから即移植出来た。
それより、SPE向けにコンパイルしたら
.bss exceeds local store range
とかいいやがんの。んなでかくねーって。

135:デフォルトの名無しさん
06/12/21 02:20:09
>>124
別におかしくは無い。SPE7のうち1つはOSが使う物。
単にユーザーからは直接触れないってだけ。

136:デフォルトの名無しさん
06/12/21 18:49:48
逆に言うとOSは1つしか使えないの?
それともマスターがひとつ?

137:デフォルトの名無しさん
06/12/21 19:16:02
ハイパーバイザだよ。
7つのx86があって1つはVMWareが使ってデバイスをエミュレートして
中の人に6つのx86をそのまま見せてる、みたいなイメージ。

138:デフォルトの名無しさん
06/12/21 21:47:20
【SPE】PS3 Linux Part 4【YDL】
120 :67:2006/12/21(木) 20:37:59 ID:IJtDThab
ん〜変化が無いのは寂しいねぇ。
というわけで燃料投下。

中身はSPEプログラミングをちょっと楽にする
(適当に作った)ライブラリ/フレームワークです。
サンプル1個しかないけど…
URLリンク(n-exp.com)

この程度のライブラリでも面倒なモノはかなり吸収できてると思うんだ。

139:デフォルトの名無しさん
06/12/22 17:13:35
宣伝乙
問題はせっかく苦労して作っても
誰も使わない、使えない、評価できない、事だ
まさに豚に真珠、ぬかに釘、PGにCell、だ

140:デフォルトの名無しさん
06/12/22 17:37:36
俺は評価したぞ。
自分の持っている物より目新しいものは無かったからスルーしたが、今後に期待はしてる。

141:デフォルトの名無しさん
06/12/22 17:40:11
新しいことをやろうとしてる人を>>139みたいに言ってるのを見ると、
プログラムが好きな人間だったら貶めないと思うけどな。
未踏の地は踏みたくなるのが人間らしいと思う。

142:デフォルトの名無しさん
06/12/22 18:47:21
>>139
2chの二大嫌われ派閥の一つゲハ厨乙。

143:デフォルトの名無しさん
06/12/22 23:00:46
全部C++でラップしてしまってもいいんじゃまいかと思った。

144:デフォルトの名無しさん
06/12/22 23:17:55
>>139
自体煽りだからな。そう言う目で見れば脳内フィルター張れんだけど。

145:デフォルトの名無しさん
06/12/22 23:43:56
123 :67 :2006/12/22(金) 05:32:29 ID:C7rpnh+2
ベンチマークの方だけど、かなり間違いをやってたみたいで、現在のところ

最適化しなおしたSSE2 : 4.36秒
CELL版(ジョブスケジューリングあり) : 1.19秒

クロック当たり = 1 : 3.046

って感じ。分岐が思ったよりも負荷になってる感じかも。

146:デフォルトの名無しさん
06/12/23 02:19:53
オレ的には東芝のコンテストが気になり。

147:デフォルトの名無しさん
06/12/23 02:35:14
>>142
もう1つはなんだろ。
最悪板の1つがゲハなのは確実だけど。

148:デフォルトの名無しさん
06/12/23 04:09:54
ゲハとVIPと東亜&ハングル

他の板に街宣するからな。

149:デフォルトの名無しさん
06/12/25 19:20:32
Cellプログラミングのレシピ - PS3 Linux Information Site
URLリンク(cell.fixstars.com)

150:デフォルトの名無しさん
06/12/27 21:48:29
手元に Cell マシンが無いので試してないのだけど、
-fprofile-arcsや-fbranch-probabilitiesって実装されてる?
あるなら、プロファイルによるブランチヒントの挿入とかやってくれるかも。
動的な分岐予測を持ってないPPE/SPEにとってはありがたいと思うのだが。

151:デフォルトの名無しさん
06/12/28 00:11:13
LLVMとか

152:デフォルトの名無しさん
06/12/28 02:00:07
gcc3系列のプロファイルってRTLベースだからあんまりたいしたことやってない

153:デフォルトの名無しさん
06/12/28 10:04:13
それにヒントの挿入はやってない

154:デフォルトの名無しさん
06/12/28 10:53:32
PPEだけだと遅いってよく言われてるけど、実際自分で組んでみると速いな。
メモリ帯域が速いからかな?
ネットの情報を鵜呑みにせず自分の目で確かめた方がいいとおもた。
悪意のあるやつは「本当っぽいウソ」を書くからなあ。
なぜかそういう奴ほど検索で上位に来たりするんだよね。組織的にやってんのかな。

155:デフォルトの名無しさん
06/12/29 15:14:27
遅いと聞いてたから速いと思うんだろう。遅いと言ってる連中も同様に期待してたからだろう。
EE の時だって初めのうちは遅いと言われてた。
そのうちみんなコツをつかむさ。

156:デフォルトの名無しさん
06/12/29 22:46:06
確かに、速いとか遅いとか、具体的な数字を出さないのはイカンよね。

157:130
06/12/30 15:13:49
>>131
set_cache_stateを省略したらリンク出来た。
ただし>>132で言った通りエラーが起きている。

PPE:
testing the Sarwate algorithm..............................passed
testing the slicing by 8 over 64 bit algorithm.............error
passed
Slicing by 8 Algorithm (cycles/byte), 5.976562
CRC calculation error
Sarwate Algorithm: (cycles/byte), 18.777344

SPE:
testing the Sarwate algorithm..............................passed
testing the slicing by 8 over 64 bit algorithm.............error
passed
Slicing by 8 Algorithm (cycles/byte), 5.996093
CRC calculation error
Sarwate Algorithm: (cycles/byte), 22.332029

158:デフォルトの名無しさん
07/01/06 02:24:41
URLリンク(www.tgdaily.com)
だってさ。
どう入手したものか不明だけど、パフォーマンスは気になるなぁ。

159:デフォルトの名無しさん
07/01/07 19:10:39
>461 名無しさん必死だな sage New! 2007/01/07(日) 14:50:51 ID:oNdJEXRL
>SPEで、あるタスクを実行しながらDMAで次に実行するタスクのプログラムとデータを読み込み、遅延なくそれを繰り返すっていうことできるのかな?

こういう書き込みがあったんだが、案外簡単に作れそうな気がする。

1: SPEに流し込む為のバイナリ生成方法を確立
2: タスクを読み込むDMA部分を書いてSPEバイナリに入れる

処理が有限の小さなタスクを順次DMAで読み込んで実行する事が出来るな。
ちょっと面白い事が出来るかも。

問題は1だが、elfspeか何かのソースを読めばいけるのかね。

160:デフォルトの名無しさん
07/01/07 19:14:10
なにこの復活の呪文みたいな意味不明な専門用語の羅列

161:デフォルトの名無しさん
07/01/07 19:15:11
メモリ配分も解決しないといけないか。
現在のタスクが処理中のメモリと、DMAで読み込む次のタスクのメモリをどうするか。
メモリを半分に分割して、バイナリはPICにすべきか。

162:6(ry
07/01/07 19:43:59
>>159
固定アドレス用に作ってstrip したモノが一番手っ取り早いと思う。
可変にするとなると結構面倒。

163:デフォルトの名無しさん
07/01/07 20:09:13
固定アドレスにしてしまうと、現タスク処理中に、
次のタスクを読み込むのに支障がでないかい?

164:デフォルトの名無しさん
07/01/07 20:16:25
>>163
elfspeは参考にならなかったハズ…だし、
他のプログラムの実行中にELFをロードするメソッドもなかったはずだし、
そういう支障を来たさないためには、
・ ロードするアドレスに応じて(2つ以上の)バイナリを作っておく
・ 可変アドレスのためにダイナミックに(しかも手動で)ロードする (カーネルがやってるのと同じこと)
のいずれかが必要。

165:デフォルトの名無しさん
07/01/07 23:23:35
>>164
プログラムを差し替えたいなら SPU Overlay を使えば?


166:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/01/07 23:27:58
John the Ripperを移植しようかと思ってる俺

167:デフォルトの名無しさん
07/01/07 23:35:35
PS3買ったの?シミュ?

168:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/01/07 23:39:22
シミュ。

ってよりLinux嫌いなので
Excelでレイテンシ計算しながらコード書いてる。

そのLinux環境すらVPC

169:デフォルトの名無しさん
07/01/08 00:11:22
>>168
odd/even のパイプライン管理と 128個のレジスタ管理に Excel は必要だよな。
レジスタは結局いくつあっても足りねえ。

170:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/01/08 00:19:24
60GBが最安55000円くらいまで来たのでもうじき買い頃
てかHDDなしで\39,800希望
ノート用のHDDちょうど余ってるから

171:デフォルトの名無しさん
07/01/11 16:58:19
【CES】Cell家電なら著作権保護も万全です---IBM社が実演 - 組み込み開発 - Tech-On!
URLリンク(techon.nikkeibp.co.jp)

そういや、isolatedモードってPS3-Linuxとかでは使えないのかな。
仕様公開する気は無し?

172:デフォルトの名無しさん
07/01/13 12:20:27
RapidMind and Terra Soft Partner to Unleash PlayStation(R)3 for Linux Developers
URLリンク(home.businesswire.com)


173:デフォルトの名無しさん
07/01/22 02:32:04
よし!一からDMAの勉強をするぞ!

174:デフォルトの名無しさん
07/01/22 02:32:56
LSとLSのDMAをやるぞ!

175:デフォルトの名無しさん
07/01/22 02:34:55
URLリンク(kfs3.ncsa.uiuc.edu)
とりあえずこれを参考にしよう!

176:デフォルトの名無しさん
07/01/22 02:40:30
URLリンク(www.power.org)
これも参考になりそうだ!

177:デフォルトの名無しさん
07/01/22 02:47:13
ふむふむ、SPEのLSのアドレスは32bitの実行アドレスとしてあらわされるんだな!
実行アドレス?まあいいか。

178:デフォルトの名無しさん
07/01/22 02:49:42
他のSPEのLSにDMAするには、その32bitの実行アドレスのLSへのポインタがいるのだな!

179:デフォルトの名無しさん
07/01/22 02:50:49
そうか、だからDMAの前にmailで通信するのだな。

180:デフォルトの名無しさん
07/01/22 03:03:48
spu_writechは、SPU チャネルにデータを書き込む関数か。
MFC_WrTagMaskっていうチャネルがあるのかな?そうっぽいずら。

181:デフォルトの名無しさん
07/01/22 03:13:05
spu_read_in_mboxっていうのは、着てるメールを受け取るのね。眠い。また明日。

182:デフォルトの名無しさん
07/01/22 23:13:01
今日はちょっとDMAから離れて、条件分岐をif文無しでやる方法を学んだ。

183:デフォルトの名無しさん
07/01/22 23:25:26
URLリンク(www.power.org)
19ページ
分岐後の両方の計算をしておいて、分岐をなくすというやつ。
これってパイプラインの深いx86のcpuでも効果ありそうな気がするけど
どうなんだろうか。


184:デフォルトの名無しさん
07/01/23 01:08:26
x86でも効果あるし、実際使われてるよ。リンク先読んでないけど。

100を使うか200を使うかみたいのはコンパイラが値の差分でやるし、
aかbかみたいのもコンパイラオプションで強制すればcmovを使う。

でも効果があるのは予測出来なくてかつ超単純な演算に限られるから、
コンパイラが自動で行う事はあまり出来ない。

予測出来る場合は予測分岐でペナルティを無くせるし、
式が長いと両方計算するのは無駄。

ってことで、そこまで追いつめられる程の技量のあるプログラマは
当然各自意識してプログラミングする事になる。

ただ実際にはそこを考える前にアルゴリズムを見直す方が
何倍も何十倍も効果がある。

185:デフォルトの名無しさん
07/01/23 02:53:48
>184
すごく詳しく教えてくれてありがとう!

最後の部分だけど確かに条件分岐を減らしてみても、今の自分がやってる計算では
速度にほとんど影響なかった。普通にif文使わないのが面白かったのでやってみたけど
こだわって書いた割にはあまり甲斐がなかったなあ。

だから本当に速度出そうと思ったらプロファイルをやることが必要だなあと実感。
プロファイルの仕方もぼちぼちやっていこう!

186:デフォルトの名無しさん
07/01/23 04:11:15
条件分岐を減らすためにややこしくなったり、
プログラムサイズが増えて、キャッシュを圧迫なんて事もあるしな。

もしチューニングにこだわったプログラムを書きたくなったら、
Grate Code Vol.2を読むべし。まぁ>>184の言う通り、
アルゴリズムを見直したりするのが先だろうけど。

187:デフォルトの名無しさん
07/01/23 11:33:14
1. アルゴリズム&データ構造 ← データ構造を忘れない
2. 急所を探してそこだけチューニング
2.1 インラインとかマクロとか
2.2 intrinsicを利用
2.2 アセンブラを使う
キャッシュ&パイプラインを意識する&レジスタをうまく使う
間違ってもプログラム全体をチューニングしたりしない様に

188:デフォルトの名無しさん
07/01/23 16:00:10
うおー、みんなありがとう。このスレはなんかいい人ばっかだなあ。
チューニングとかって、具体的にどうやればいいかってcellで初体験
だから、わからないことが多くて、でも面白いね。

例えばパイプラインを意識したチューニングとか具体的にどうすれば
いいのかまだわかってないんだよね。speはアウトオブオーダーがない
から、それを意識しろとかね。とりあえず、本は入手してみるよ!


189:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/01/23 23:02:51
IA-32のMMXやSSEでもマスク生成命令あるけど、プレディケーションのためじゃない。
なぜなら普通に分岐予測ハードに頼った方がよっぽど効率がいいから。



190:sage
07/01/24 10:25:56
SPEとSPEとの間でDMAってできる?

191:デフォルトの名無しさん
07/01/24 18:42:50
自SPEと他SPEならできる。

まだ試してないから嘘言ってたらすまん。

192:デフォルトの名無しさん
07/01/24 22:33:22
SPE間の転送速度を実測するコードとかが公開されてます。
URLリンク(kfs3.ncsa.uiuc.edu)

やっぱcellの強みのひとつは、このリングバスの速い転送速度だと思うので
LS間の転送を習得したいのです!

193:デフォルトの名無しさん
07/01/24 22:49:31
ちょっとずつだけど勉強してくぞ!
spu_read_in_mbox
とにかく来たメールを読み込むのね。


194:デフォルトの名無しさん
07/01/24 23:05:24
spu_mfcdma32
spu_mfcstat

たいていこの二つは組でつかわれているんだよなあ。spu_mfcstatは転送を
待つか待たないかってことかな。このブロックのタイプをどう選ぶかが
ものによって重要な予感…。



195:デフォルトの名無しさん
07/01/24 23:08:24
spu_mfcdma32
spu_mfcstat

たいていこの二つは組でつかわれているんだよなあ。spu_mfcstatは転送を
待つか待たないかってことかな。このブロックのタイプをどう選ぶかが
ものによって重要な予感…。



196:デフォルトの名無しさん
07/01/25 00:07:18
URLリンク(kfs3.ncsa.uiuc.edu)

適当に眺めていたが、なかなか簡単にはわかんね。

PPEのプログラムから、順を追ってかないとだめそうだ。

ほんちゃんの帯域測定するためのDMAの前にいくつかDMAをやってて、
わかりにくい。

今日わかったこと
転送前に転送のためのいくつかの情報をmail or DMAで転送。
その後に本格的にDMA。


197:デフォルトの名無しさん
07/01/25 09:49:39
spe_get_ls でLSのアドレスを取得できるみたいだね。

198:デフォルトの名無しさん
07/01/25 16:09:41
>197
情報ありがとう!その関数で検索かけいいブログ見つけました。
URLリンク(blogs.yahoo.co.jp)

あとspe_get_lsはSPE run time libraryで解説が載ってるのですな。
URLリンク(www-306.ibm.com)

sonyのC/C++拡張のpdfしかみてなかったんで、こっちに気づけてよかった。

199:デフォルトの名無しさん
07/01/27 20:07:42
196と198の2つのSPEーSPE間のDMA転送をみて、ようやくわかってきた。

198のほうは、PPEとSPEがメール通知をしながら転送に必要な情報を取得しつつ、
SPE間のDMA転送をしている。

196のほうは、PPEであらかじめDMAに必要な情報を取得してしまって、それを
各SPEに先に送って、後はSPEにやらせるという感じかな(?)。

一回プログラムが始まったら、SPEで勝手にやってもらうというのが自分の
理想なので、196のほうを本格的にみていこうかな。ちょっとこっちは長いんだけどね。


200:デフォルトの名無しさん
07/01/31 04:53:02
ソニーがPS3のコストダウンに着手,「65nm世代の製造技術でCellの量産を開始した」
URLリンク(techon.nikkeibp.co.jp)

201:デフォルトの名無しさん
07/02/02 15:23:39
1台辺り3万円以上の赤字って言われてるからコスト削っても値下げはないな。

202:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/02 22:22:17
店頭レベルでなら現状4万切るところも出てるが

203:デフォルトの名無しさん
07/02/02 23:14:23
めも:うんどーずのeclipse+CDTでPS3に接続
 ビルド:sambaでマウント。ssh/rshでホストベース認証(ssh-agentとかでも可?)、ビルドのコマンドにssh/rsh
 デバッグ:新し目のgdbのソース(cygwinのパッケージのはだめ)をビルド、--target=powerpc64-ps3-linuxとか。ホストでgdbserver


204:デフォルトの名無しさん
07/02/04 04:42:06
LS間のdmaのレイテンシは、約100ns。core 2 duoのコア間はL2キャッシュ
介するならその10分の1…。
LS間のdmaでは、データは一回メインメモリにマップされて、それからdmaされるようだ。
なんで直でLS間で通信できないんだろうか。せっかくリングバスでつながっているのに。
たぶんメールのやりとりはできるんけど。

LS間の直の転送って自分が知らないだけでできるんだろうか?

205:デフォルトの名無しさん
07/02/04 04:53:08
204の疑問から、SPE間のデータ転送は、PPEを介して(結局メインメモリを介して)
やってもかわんないなあと今思っとります。データの転送量でいえばむしろへるし。

というのは、全SPE(6個)に全SPEと通信させたとして、6×6=36の通信が発生するのに対して、
全SPE→PPE→全SPEなら6(全SPE→PPE)+6(全SPE→PPE)=12の通信ですむから。

うーん、やっぱマルチコアは通信のことを考えるのがやっかいだ〜。


206:デフォルトの名無しさん
07/02/04 11:54:37
なんのこっちゃ?

207:デフォルトの名無しさん
07/02/04 14:03:32
>>205
Broadcastやりたいならpoint-to-pointは検討する迄もないだろ

208:デフォルトの名無しさん
07/02/04 14:15:55
>>204
LS間のDMAは、直に行っているぞ。
それから、PPE<->SPE より SPE<->SPEの方が高速。
SPE<->SPEは片方向の場合、理論値25.6GB/sに近い速度がでる。


209:デフォルトの名無しさん
07/02/04 17:14:49
>207
そうなんだけど、main memory<->lsのレイテンシよりls<->lsのほうが断然早い
と思い込んでたからそれに期待したのです。もし転送データ量自体は大して多くないなら、
多少転送量の無駄使いになっても、結局早く転送できるのでいいかと思ってたということです。

>208
いままでいくつか資料見てきたんですけど、ls-lsのDMAはメインメモリにマップされて、
転送というのしかみたことがないのです。以下の11ページなんかがその例。

URLリンク(www.internetconference.org)

実際のls<->lsのdmaのレイテンシは、main memory<->lsレイテンシと同じオーダーなので
そういうことだと思っています。以下でそれぞれのレイテンシが出てたはずです。

URLリンク(hpc.pnl.gov)

たしかにls<->lsのほうがほぼLSの帯域一杯使えるという点でははやいんですけど、
それほど多くないデータをちょくちょくやりとりしたいというときには、最低限通信にか
かるかかるレイテンシのほうが重要になってくると思うのです。

そのレイテンシにしても、ls<->lsのほうが、main memory<->lsよりも2倍くらい早いので、
いいんですけど、10−50倍並みの早いのを期待してたんで、ちょっと残念という感じです。


210:208, 209
07/02/04 17:43:29
実はにゅーらるねっとをCellでやろうと思ってます。
ちょっと特殊な用途を勝手に想定していたんで皆さん混乱させたかも。
ごめんなさい。

以下興味のあるひとは読んでみて下さい。

にゅーらるねっとはユニットが連絡しあうことで情報処理を行います。
Cellでやる場合、このユニットをSPEに振り分けて計算させるのがいいと思います。
ユニット同士の連絡のデータ量というのは、画像とか音楽のエンコードに比べると
、全然少ないと思うんですけど、連絡は常にしないといけないのです。

そうすると、リングバスの広い帯域で大容量データ転送というより、SPE間で
レイテンシの少ないこまごました通信をしたいということになるわけです。



211:デフォルトの名無しさん
07/02/04 20:26:43
ニューロン6個ってことは無いだろうから
ユニット一個に数百個のニューロンが含まれるとすると
256KBのLSではかなり辛くない?
それはさておき
一塊を複数のSPEで処理するのは(完全結合だと)通信が多過ぎて無理っぽい
もし多層モデルなら各層をSPEに割り当ててパイプライン的に処理した方が速かろう
いずれにせよ通信量が減る構成or構造を考えないとそっちがネックになるべ?

212:デフォルトの名無しさん
07/02/05 00:57:24
>> 209
真面目にやる気がある人みたいなんで
漏れが知ってる限りのことは教えてやろう

>ls-lsのDMAはメインメモリにマップされて、転送というのしかみたことがないのです。
メインメモリにマップされるってのは嘘だ。正しくは、実効アドレス空間にマップ、だな。
実体がメインメモリにあるんじゃない。メモリマップドI/Oみたいなもんよ。

まああれだ。IBMの記事とかにもたまに怪しいのがあるぐらいなんだから、
そーゆー怪しい所の記事をうのみにするのは、、、な。

で、問題のレイテンシだが、元々リングバスなんて帯域は広くても
レイテンシには弱いはずだな。それにSPEの物理的な距離の差でも
レイテンシは変わるはずなんじゃないか? 測ったことはないが。

あとちなみに、DMAだと128バイトってマジックナンバーがあるから
それに合わせた設計すると、転送量に気持ち余裕ができるぞ。


213:デフォルトの名無しさん
07/02/05 02:03:07
MMIOってのが解ってないんじゃ?
ぶっちゃけた言い方すれば、EAにマップされたSPU1のLSがあって、
SPU2がそのアドレスにDMA転送かけるってのは、(メインメモリは関係無く)
SPU1のLSに対する読み書きをするって事。
転送先のアドレスがメインのDRAMなりVRAMなり他のデバイスのメモリなりレジスタにマップされてれば、それぞれへの読み書きになる。

所で実際にニューロン1つにプロセッサ1個必要なら、EIBより外部バス(PS3ならGbEとか?)の方が問題になりそうな。知らんけど。

214:208, 209
07/02/08 03:03:05
>211
まだ最終的にいくつユニットをつかうとか決めてないんだけど、
なるべく多くのユニットでやって見たいなと思ってます。LSの容量の問題があるけど、
ユニット自身の計算している間に、DMAで次のユニットのデータをロード
するような仕組みでいけば、LSの問題は一応解消できるかなと思ってます。
面倒くさそうだけど…。

>>212、213
私、はずかしながらMMIOというものをわかっていませんでした。了解です。

PS3でクラスタ組むということもちょっと考えているんだけど、たぶんGbE
のレイテンシ(10μsオーダー?)なら、そこそこいけると思ってます。
とりあえず1台でできたら、次にやろうかな。きっとその頃にはPS3も安くなってるでしょう…。

215:209
07/02/09 03:40:26
あ、名前らん間違ってた

216:デフォルトの名無しさん
07/02/09 17:07:17
なにこのスパイの暗号みたいなスレ

217:デフォルトの名無しさん
07/02/10 02:04:40
>ユニット自身の計算している間に、DMAで次のユニットのデータをロード
>するような仕組みでいけば、LSの問題は一応解消できるかなと思ってます。

俺もこれやりたい。
libspe2には一応オーバレイの仕組みもあるけど、
そういうことをDMA使って自分でやりたいんだよね。
自分で組めばオーバレイのダブルバッファリングができるはずなので。
でもリンカのスクリプトとかわけわからんwwww
どっかに資料ないかなあ・・・

218:デフォルトの名無しさん
07/02/10 13:53:41
>>217
どこが分からないのかが分からないのであれだが
URLリンク(cell.fixstars.com)
これにセカンドバッファへの転送開始,バッファ切り替え,待ち,&ループ
を追加したんじゃダメなの?

219:デフォルトの名無しさん
07/02/10 15:26:18
>>214 がやりたかったのは多分そういう単純な
バッファリング(ダブルである必要は無いが)だろうな。

>>217 はテキスト、つまりプログラム断片を動的に読み込みたいんだろ。
グローバル変数とかが要らないんだったら、テキストセグメントの
アドレス指定してELFつくればなんとかなるんじゃね?
つか、libspe2にそんな機能あるの? リファレンスには載って
なかったような気がするが


220:デフォルトの名無しさん
07/02/10 18:02:24
オーバーレイなんて百害とまではいかないが一利ないよ。

221:デフォルトの名無しさん
07/02/10 18:32:34
>>219
CBE SDK2.0のISOイメージの中にあるpdfの、
cpbprg00.pdf (Software Development Kit 2.0 Programmer's Guide Version 1.0)
これの4章に説明があるよ。
IBMのサンプルコードにもoverlayっていうのがある。
一応テストしてみたけど、それなりに高価なのでループの中の関数には使えないな。(当然か)
ゲームループの中で数十回タスク切り替えする程度なら十分使えそうだけど。

222:デフォルトの名無しさん
07/02/10 22:34:51
>>220
分散メモリ環境だと
 データ常駐,コード取っ替え引っ換え
 コード常駐,データ取っ替え引っ換え
のどちらかでやるのが速そう
コード&データを取っ替え引っ換えってのもあるけど

223:デフォルトの名無しさん
07/02/11 00:48:16
使用頻度多い方を常駐させればよいと思いますよ。
動的に変更できるように設計しましょう。

224:デフォルトの名無しさん
07/02/11 20:02:48
使用頻度とサイズの両方考えた方がベターなような
だとすると大抵はデータ常駐になるか

225:209
07/02/11 22:14:11
引き続きLS間のDMAを試しております。
DMA転送をさせるられるようになってきたけど、まだいろいろ苦闘しております。
なんでかというと、SPE間の同期をとりつつうまく転送するというのが
簡単そうでなかなか難しい。

やっていて感じたのが、個々のSPEの演算の進み具合はかなりバラけるよう。
先入観で、きっと大して同期とらなくてもおんなじ演算させてりゃ勝手にあ
うだろうと思ってたら、甘かった。




226:209
07/02/11 22:21:11
あとDMA転送するデータ量がそんなに多くない場合、DMA転送のバックで
計算させて時間を稼ごう(レイテンシを隠蔽しよう)とかしても、ほとんど
演算時間の短縮に効果がないということが少しづつ判明して参りました。
100ns前後の遅延は、10の7乗回積み重なってやっと1秒だし。

将来、ネットワークを大きくしたときトラフィックが膨大に増える
可能性があるので、本格的な最適化はそのときにしようと思っとります。

227:デフォルトの名無しさん
07/02/11 22:57:07
サンプルコードやライブラリ等を集めたHPでも、誰か作らんの?
俺は、そもそもPS3買う予定もない人間なんだが。

228:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/11 23:47:10
PS3買ってきたけどFedoraとYDLどっちがいい?

229:デフォルトの名無しさん
07/02/12 00:06:57
YDLの利点はLANの設定がほとんど要らないなのとLibspe辺りが始めから入ってる位
Linux慣れてるならFedoraを薦める
詳しくはLinux板見るベシ

230:デフォルトの名無しさん
07/02/12 00:07:52
Yaneurao Dynamiclink Library

231:デフォルトの名無しさん
07/02/12 13:34:54
>230
ハァ?

232:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/12 15:55:41
YDL落とした。
こんがり焼けました。

233:デフォルトの名無しさん
07/02/12 18:17:06
PS3が焼けたのか?w

234:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/12 18:20:06
VH

235:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/12 18:24:47
ミスった


S端子接続って画質よくなる?
アプコン使ってVGAに接続してるんだけど。

ちなみにHDMI対応ディスプレイなんてものはうちにはない。


まあ普段はtelnetで十分ですよね

236:デフォルトの名無しさん
07/02/12 18:33:38
sshで十分

237:デフォルトの名無しさん
07/02/12 19:01:30
VNCで

238:デフォルトの名無しさん
07/02/13 01:01:33
sshに一票。
ただしビデオ叩くのはちゃんとディスプレイからログインしないと駄目。

239:209
07/02/13 06:07:50
LS間のDMAのデータ転送がようやくできてきた。
もうバスエラーが出まくって、なんで?なんで?って大変だったです。

データ転送する前にSPE間で同期をとる必要があって、そんなことは
やったことがないのでとりあえず適当にやってみるが、ちょっとでも
穴があると、みんな勝って気ままにどっかへいってしまう。
幼稚園児を整列させるようです。

DMAのありのと無しの計算からレイテンシを見積もると、約15ns。
おー、早いなあ。
ただ、SPEの数を3、4…と増やしていくと、計算時間は、レイテンシ以上に
増加していく。
原因ははっきり調べてないけど、同期に時間がかかっているんだろう。

240:209
07/02/13 06:13:48
まだまだ同期や通信のレイテンシを減らすことはできそうだけど、
トータルの計算時間中の通信時間がいまでも十分小さいので、とりあえず
これでよしとしよう。わーい。

241:デフォルトの名無しさん
07/02/13 09:29:35
>ただ、SPEの数を3、4…と増やしていくと、計算時間は、レイテンシ以上に
増加していく。
リングバスの(衝突/混雑の)せいじゃなく?

242:デフォルトの名無しさん
07/02/13 10:24:18
>>240
おめ&がんがれ、応援してるぞ
徹夜のようだが無理すんなよ

243:209
07/02/13 17:18:31
>>241
SPEが4個の時、DMAキューは最大12なんだけど、リングバスの最大DMAキューと
同じだから、多分4つまでは飽和しないと思うんだ。でも、2、3、4…と増やすにつれ
レイテンシはだんだん増加するから多分同期のせいだと思うんだ。調べられたら
調べてみます。

>>242
あんた体まで心配してくれるなんてなんていい人なんだ!
ちなみに早起きしただけだから、大丈夫だよ!

244:デフォルトの名無しさん
07/02/14 08:24:32
圧縮機能つきDMACをSPE使って誰か作ってくれ

245:デフォルトの名無しさん
07/02/14 10:10:09
>>243
遅レスだけど、かなり単純なDMAダブルバッファのサンプルコードがBEハンドブックにあるよ。
URLリンク(www-128.ibm.com)
Cell Broadband Engine programming handbook
同期とったりとかは別に考えないとだけど。


246:デフォルトの名無しさん
07/02/15 01:10:13
Cellの開発費削減だってね。

247:デフォルトの名無しさん
07/02/15 02:38:50
>>246
まぁ45nmはなかなか厳しいので正しい判断ではあるよな。

248:デフォルトの名無しさん
07/02/15 09:09:21
開発費ではなく製造ラインへの投資だろ。

249:デフォルトの名無しさん
07/02/15 09:31:16
45nmに限らず、プロセスルール競争はIntel帝国対IBM連合に台湾だからね。
投資効率考えたら当然ではあるんだが、日本の景気が良いうちにソニーにかぎらず
ここら辺の先端技術でリードできる立場になっておいて欲しい所。

250:デフォルトの名無しさん
07/02/15 10:11:41
とりあえずはIBM連合あたりに任せればいいんじゃないかな。

251:209
07/02/15 22:04:53
IBMはPower6とは別に、Intelのメニーコアへの対抗として、
CELLをつづけてくれればいいんだけどなあ。

まあIntelのやつはもともとCELLに触発された部分が大きいのかも知れないけれど

これからこのCPUは先細りするといわれるとプログラムのやる気がちょっとダウンするなあ。



252:デフォルトの名無しさん
07/02/16 01:10:23
もっと前から作ってんだろw

253:デフォルトの名無しさん
07/02/16 01:19:35
45nmについてはIntelもIBMも2年以上前から言ってたけどねぇ

254:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/16 01:28:04
IBMはeDRAM発表したね
Inteも欲してる技術じゃなかろうか

255:デフォルトの名無しさん
07/02/16 12:37:29
>>251
どんどん先細るよ。45nmの次が32nmくらい(プ

256:デフォルトの名無しさん
07/02/16 13:00:21
それでも今後三年間?で3000億円規模の半導体投資なわけだから、
カスタムやマイナーチェンジなんかも楽勝では。
いままでは65nm工場開発と、Cellの研究開発で5000億でしょ?
その二つ得た今となっては45nm研究しない分物凄い潤沢資金なはずだが。
あとIntelの奴はそれこそ専用用途にしかつかえないっぽいが。

257:デフォルトの名無しさん
07/02/16 14:01:28
CISCもこれからはRISCだからと謂われていたけれど復活したじゃん。
メニーもヘテロも本格的には出て来たばかりでどちらがなんてまだ分からないと思うけど。

258:デフォルトの名無しさん
07/02/16 17:24:58
URLリンク(pc.watch.impress.co.jp)

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

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

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

260:デフォルトの名無しさん
07/02/17 02:24:52
Blue/Gene買うやつはいないっていいたいの?w

261:デフォルトの名無しさん
07/02/17 12:16:24
今のcellでも1個で倍精度20Gflopsあるのにね。

262:デフォルトの名無しさん
07/02/17 13:40:35
>>259=209
なぜそんなに高くなると思うの?

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

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

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


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

265:・∀・)っ-○◎●創聖のダンゴリオン ◆DanGorION6
07/02/17 15:35:52
ダイレクトに接続できたっけ?

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

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



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

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

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

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

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

270:デフォルトの名無しさん
07/02/18 02:08:17
何が当然なんだか

271:269
07/02/18 02:12:09
>>270
何か他の考え方が?

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


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

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

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

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

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





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

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


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


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

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

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

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

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

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

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

279:デフォルトの名無しさん
07/02/18 16:55:48
しかしゲハと何も変わらん雑談スレだな

280:デフォルトの名無しさん
07/02/18 21:13:52
>>279
そう思うならこのスレ来ないほうが君のため。

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

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

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

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

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

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

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

284:デフォルトの名無しさん
07/02/19 03:10:34
>>274
そうそう、やっぱCELLはいじってて面白いんだよ。

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


285:・∀・)っ-○◎● ◆DanGorION6
07/02/19 04:46:29
商業的には既に終わってるぽ
URLリンク(www.vgcharts.org)

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

286:デフォルトの名無しさん
07/02/19 12:34:54
終わってると言うよりまだ始まってない感じ

287:デフォルトの名無しさん
07/02/19 15:35:47
始まってないことを今は終わってるって言うのか?

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

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

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

291:209
07/02/19 23:11:51
>>289
cellの命運を決めるものは、なんになるだろう。

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

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

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

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

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

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

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

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

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

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


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

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


299:デフォルトの名無しさん
07/02/20 19:11:48
>>298
何をするのかによるのでそれは言い難い。

300:デフォルトの名無しさん
07/02/20 21:24:49
>>296
向いてるような向いてなさそうな...どうなんだろ?

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

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

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

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


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

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

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

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


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

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


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5386日前に更新/102 KB
担当:undef