元スレcellプログラミングしちゃいなよ4
cell覧 / PC版 /みんなの評価 : ○
251 = :
諫早はどうでもいいんだが、大分の縮小は困る。
252 = :
>>246
本命がその方法なら同じことをアセンブリでやってる俺の勝ちなんで非常に助かるんだがな
O(n)を切ってる奴には残念ながら勝てないがソース公開は楽しみでもある
253 = :
残念だが俺は君とは違う方法をやってる
254 = :
団子さんの本サイトってどこ
255 = :
団子の正体は日本史の二流研究者
"日本史" "排仏毀釈"で調べれば見つかるぞ
256 = :
>>253
それは残念
3/20を楽しみにしとくよ
257 = :
コンテストと関係なくて初心者質問で恐縮ですが
SPEプログラムってマルチスレッドのみならず関数呼び出しの場合も
レジスタ全部退避するんでしょうか
もしそうなら全部main()で済ますのが正解?
258 = :
70番~127番までのレジスタは関数呼び出しの前後で保存されてなきゃならないって決まりがあるっぽい
って事はレジスタが余ってる限りは退避しないようになってるんじゃないかと
確かめたわけじゃないから絶対とは言えんけどもレジスタ大量にあるのがSPEの特長だしね
261 = :
素晴らしい解法を思いついたと思ったが
最終段がDLPだよ......orz.....検討し直し
262 = :
DLPって何の略?
263 = :
http://ja.wikipedia.org/wiki/DLP
プロジェクタの一種
264 = :
ありがと
265 = :
>>261
ニヤニヤ
266 = :
普通にやって10%切るの難しいって誰か書いてなかったっけ?
土曜から始めて、今、mtテーブルの初期化が終わった。
ループ展開などする前でも10%切るんだけど。かなりハードル低くないか?
それとも、このあとのTemperingがきついのかな?
268 = :
>>267 普通そうだよな。それに、今回の課題はオリジナルがいちいち
関数呼び出しているからオーバヘッドが大きい。
だから、オリジナルの3%を切るくらいが普通の書き換え組みの最低ラインだろう。
とはいえ、俺がそのラインに届くかどうかどうか知らんが。
270 = :
駄法螺吹きが多いな、ここはw
272 = :
mt_mine.cをいじるだけで事足りるんじゃ?
273 = :
>>272
spe 用の main を mt_mine.c に書くと一つのバイナリに二つ main が入ることになってシンボルが衝突してしまいます。
また、spe2 のライブラリにリンクしないと、spe_program_load などがリンカエラーを起こします。
Makefile を変更しないとどうにもならない気がするのですが、何か根本的に間違えているのでしょうか。
274 = :
>>273
根本的に間違えてるよ
そもそもppeプログラムは不要で,speプログラムだけしかない.
コンパイルしてできた実行ファイルを実行すると1つのSPEにロードされて処理される.
275 = :
たいして量ないから課題についてきたすべてのファイルのぞいてみな。
全体の構造がわかるから
276 = :
>>267
ソース見せて?
いや、ホントに素直なSIMD化だけで?
277 = :
>>274
>>275
ありがとうございます。腑に落ちました。
278 = :
SIMD化したら単純に4倍になるだけじゃないからな
SPEでスカラ演算しようとしたらそれ以上のコストがかかる
279 = :
デバッグプリントはさむと実行できるのに
そのコードをコメントアウトすると10回に6回位実行が止まりやがる
どうやらSPEがDMA転送するあたりで止まってしまっているみたいだ
デバッグ難しいねえ
280 = :
>>279
普通のPCではお目にかかれない現象だなぁ。
なんちゅうシビアな。。。
281 = :
>>280
昔のPCだと、CPUクロックが上がった所為で周辺ICがついてこれず、ハングアップするなんてことがあった。
対処方法は、I/O制御インストラクションの間にnopインストラクションを幾つか挟むことだったり。
283 = :
>>281
それもシビアですなぁ。CPUを待たせるっていうのは思考と対立するなぁ。
>>282
VCのデバッガ最強伝説。標準の関数消したら直ったっていうのはは今までないね。多分。
284 = :
あ、printf入れたらか。そっちもないけどさ。
そんなシビアな環境でやってないからかな。。。
285 = :
止まらなくなった。何が何やら分からない。きっと今日は風が強かったからCellBE様のご機嫌がちょっと
悪かったんだな、うん
286 = :
>>279
同じような事で悩んだりしたのでヒントっぽいものを。
・align16 付けてますか?(SSE と違って実行時の例外は無し)
・アセンブラから書き換えるグローバル変数は volatile にしてますか?
今のところ spu-gcc-4.3 の致命的なバグに遭遇した事は無かったりもします。
>>282
割り込み属性を指定してる関数で破壊するレジスタを待避しないコンパイラや、
ABIを無視して呼び出し先関数で使用しているレジスタしか待避しないコンパイラなら
見たこと有りますよ。
287 = :
と思ったけど止まったぜヒャッハァー
288 = :
まぁ、アライメントだろうな。
289 = :
>>283
デバッガ関係ないし。
シビアなマルチスレッドプログラミングしてたらよく起こる
290 = :
printfでうまくいくケースはメモリ周りだろ
アロケーションしてないとこの参照とかあるとそうなる
291 = :
みなさんどうデバッグしてます?経験?デバッガ?
292 = :
>>291
ただの趣味グラマだけど、基本はVCのデバッガで引っ掛けて、引っかかったらカンと経験っぽいもので何とかしてる。
一応、ユニットテストっぽいこともやるにはやってるかな。
294 = :
コンテストも終盤だし、スレの勢いも落ち着いてきたね
295 = :
コンテストの目的って何なの?
Cellでなければ不可能な最適化や高速化の技術があるはずだ、って事なの?
SFMTとは違う事をやるの?
296 = :
>>294
誰ももう手の内を明かしたくないってことだろう。
>>295
いわゆる惰性って奴じゃないか?
297 = :
F1みたいに厳しい制限の中でトップを争うレースかと思ってたのに、
何でもあり or 曖昧な評価基準 のレースになってしまって、やる気が
無くなった。ここ2週間何もしてない。
一応提出できるレベルには持っていく積もりだけど、Fixstars賞すら狙えない
レベルに落ちぶれてしまった。
298 = :
今はCell Challengeの方やってんぜ
提出締め切りがこっちの方が近いからな
299 = :
>>298
俺もやってんだがこっちはツールキットの10倍すら厳しい・・・
しかもOpenCafe上でやるとたまにだが実行時間がめちゃめちゃ遅くなるし
今ホームページみたらQ&Aが更新されてた
遅くなる事象が報告されてるみたいだな
300 = :
いったいどんな属性のやつが優勝するんだろう?
みんなの評価 : ○
類似してるかもしれないスレッド
- cellプログラミングしちゃいなよ3 (1001) - [97%] - 2009/1/27 2:23 ☆
- CELL鬯ッ?ゥ隰ウ?セ??ス??オ????コ?????ッCore2 QX6700鬯ッ?ゥ隰ウ?セ??ス??オ????コ???? (92) - [18446744073709551581%] - 2012/1/21 0:39
トップメニューへ / →のくす牧場書庫について