1 名前:デフォルトの名無しさん [2009/01/25(日) 02:16:01 ] 前スレ cellプログラミングしちゃいなよ3 pc11.2ch.net/test/read.cgi/tech/1215388508/l50
22 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 09:32:27 ] 分かってないんだけど、579 のは大量に読み飛ばす場合なんかには高速になるんでしょ? 充分有用だし、却下されるべきではないと思うけど。
23 名前:202 mailto:sage [2009/01/28(水) 09:55:53 ] >>22 有用であるかどうかが基準のコンテストではないからな。 「同じ乱数列を生成する」という課題に対して、579の解法はチェックサムしか計算してない。 チェックサムを元に「同じ乱数列を生成する」事ができるが、計測している時間は「同じ乱数列を 生成する」時間ではなくて「チェックサムを計算する」時間でしかない。 他の人は、フォーマットの変更のあり・なしの違いはあるものの、「同じ乱数列を生成」した上で チェックサムの計算まで行って、時間を計っている。 ルールがフォーマット変更可・不可にかかわらず、579の回答は課題の趣旨と違なる。 だが、配布されている課題プログラムでは、チェックサムさえ合ってれば通ってしまう。 「mt_kadaiはチェックサムしかチェックしてないけど、同じ乱数生成しないでチェックサムだけ計算する のはあり?」と質問したので、回答待ち。 回答が「同じ乱数列を生成しないとダメ」だった場合、「バイト単位・ビット単位の順番を入れ替える 変形はあり?それ以上の変形はあり?」と、質問しなおす予定。
24 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 10:00:02 ] こういうコンテストに応募するのはこういう人種になることくらい容易に想像できるんだから、 きちっと詰めておかないのは甘過ぎると言わざるを得ないなぁ。
25 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 10:01:33 ] 出来るってことは重要だけど使う場面はなさそうだな 普通乱数の和が欲しかったら統計的な方法使ってもっとはしょるだろうし 厳密に計算した乱数の和が必要になることがあれば有用かも もちろん今回は乱数の和だっただけでいろんな演算を同じ様に高速化出来るかもしれないけどね それはそうと乱数を大量に読み飛ばす場面ってのが初期化以外で思いつかない それに読み飛ばすだけなら普通の方法の方が高速なきがする
26 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 14:18:12 ] >>23 まぁ fixstars の回答待ちは変らんけど、「チェックサムを計算する」だけなのはなしだけど、 「バイト単位・ビット単位の順番を入れ替える変形はあり?それ以上の変形はあり?」に 関してはありな気がする、っていうか、ありでいいと思うなぁ。疑似乱数列なんて、順番を 入れ替えても乱数性が変らない事が重要なんだから、実用上そう困る事はないだろうし… あるとしたら、他の環境で再現したいときとかくらいでしょ。。。ってそれなりに大事かw
27 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 14:51:29 ] 順番変えたらfixstarsの検証が大変だろ (疑似)乱数って明確な定義がないんだぜ
28 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 14:55:14 ] 計算した値をとりだすことはできるから再現性とかの問題は無い 値をとりだすのに計算以上の時間が必要なだけ SUMなら値をとりださずに計算できるから高速化可能という話
29 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 15:02:52 ] しかしFixstars反応無いな 審議中なのか事態に気がついていないのか スルーされた場合どっちを提出しようかな
30 名前:202 mailto:sage [2009/01/28(水) 15:05:41 ] 中の人はちゃんとこのスレ見てるよw 回答はちょっと待っててってメール来た。
31 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:06:01 ] 締切まで期限切られてるのに回答を先延ばしするのは理不尽以外のなんでもない。 結局、方針がどうなるか次第なわけだが、ヤマカンで当て込んだ人が特をするんだろ? 回答もらえたときには既に締切まで時間が足りなかったりする可能性を考えて欲しい
32 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:41:00 ] >>27 ??どういう意味で言ってる?順番変えても擬似乱数としては等価でしょ? 順番いれかえて使ったら乱数性が弱くなるなんて擬似乱数としてダメダメだし。 まぁ、応募コードの検証って意味では fixstars は若干大変になると思うがw 「擬似乱数列は、メルセンヌ・ツイスタの実装と同じ乱数列を生成すること。 ただし、メモリおよびレジスタ上の配置方法については言及しない」 でいい気がするんだけどなぁ。(課題のページ、"似乱数列"になってるw) あと、前 688 にあった、 > hash = genrand_mine(num_rand) + genrand_mine(num_rand2); みたいなのも、本質的ではないからなしにして明言して欲しいなぁ。
33 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 17:55:09 ] >>14 >最適化のベースになるようなアイディアを放出してみんなに >迷惑かける気は、今のところはない。 曝しちまえって。そうすればコンテ側もそれNGにするからさw 尤もハッタリだったら曝せないだろうけどなーwwww
34 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:09:46 ] チェックサムのみの検証だってさ! ショートカット万歳!!
35 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:20:32 ] >>32 temperingする前の乱数列だって乱数の1表現なんだぜ? その値から一意に求めるデータを取り出せるんだからな tempering前の方が乱数的に弱いんだけどそれでもbit自由に入れ替えておkっていえる? 結局おkになったんだけど
36 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 18:21:23 ] Hack the Cell 2009 ご参加の皆様 この度は、Hack the Cell 2009にご参加いただき、 誠にありがとうございます。 Hack the Cell 2009の課題について、お詫びと訂正をさせていただきます。 皆様から課題の検証方法に関して多数のご質問がありました。 課題内容が不明瞭であったことを深くお詫び申し上げます。 「課題の検証方法に関しては、チェックサムの整合性でのみ判断いたします。」 課題 kadai1.tar.gz に含まれるcompare関数が乱数列のチェックサムを検証するもので あったにも関わらず 「mt19937ar.cと同じ乱数列を生成してください」という定義のあい まいな表記がありました。 課題内容の不完全性を深く反省するとともに、既に課題を提出した方々を配慮し、 現段 階での課題プログラムの変更はせずに、乱数列のチェックサムの整合性により検証を行 い、順位を決めることにさせて頂きます。 自由な発想での最適化を歓迎いたします。 また予想以上の盛り上がりに感謝し、「実用性に優れている」と弊社にて判断したプログ ラムに対して「フィックスターズ賞」を追加することに決定しました。 「実用性に優れている」と判断する基準 * MT 乱数 (tempering された乱数) を生成している * オリジナルコードと同じ順序で乱数を出力している * MT 乱数を簡単に取り出せること (関数の戻り値, 配列に格納, など) * 高速である ※上記の基準をもとに総合的に判断します。
37 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:27:15 ] どう見ても出来レースの悪寒。
38 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 18:51:25 ] 優勝よりフィックスターズ賞狙うほうが俺のポリシー的にアリだな。 へたに優勝狙って3位とかになるよりは歯切れもいい。
39 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:54:07 ] >>38 それには同意 しかしフィクスタ賞は倍率高そうだな
40 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:55:32 ] このスレは202と団子が反省し合うスレになりますた
41 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 18:56:28 ] 主催者的にはフィックスターズ賞が優勝なんだろうなぁ。
42 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:05:57 ] >>41 フィックスターズ惨めだなおい。
43 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:06:15 ] >>35 tempering 前の乱数列はメルセンヌ・ツイスタの実装と同じ乱数列ではないよ? 順番を入れ替える(配置を変える)のは等価だけど、演算(tempering)を変えたら そら違う乱数列でしょ。乱数列の使い方を変えただけなら価値は変わらん。 (endian 変えて使おうが、bit flip して使おうが、証明された乱数性は変わらん) って結局おkになったんだけどw いやー、でも、こうなると 579 のが本当ならやる気なくなるなー orz
44 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:06:47 ] ってか、フィックスターズ賞の賞品はなに?w
45 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:08:45 ] > 「実用性に優れている」と判断する基準 > * MT 乱数 (tempering された乱数) を生成している > * オリジナルコードと同じ順序で乱数を出力している > * MT 乱数を簡単に取り出せること (関数の戻り値, 配列に格納, など) > * 高速である さて、フィクスターズの暖めてたもはんかいとうを探ろうかw
46 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:17:40 ] >>44 YDL6.1(サポート版) とかwwww
47 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:26:12 ] >>32 注意事項の "似乱数列" が訂正線引かれてるのに擬似乱数に修正されてるw どんだけここチェックしてんすかw
48 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 19:30:45 ] > 一回 genrand_mine() を呼び出す前には必ず一回以上 init_genrand_mine() が呼び出される あ、これ明記されたのね。前 688 をやる必要はなくなったな。
49 名前:デフォルトの名無しさん [2009/01/28(水) 19:47:43 ] >>47 でも実質ここが一番活発なフォーラムじゃない? 良くも悪くも団子が参加したからだけど。
50 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 20:21:22 ] 真の優勝争いは O(1) 計数を持ってきた者どうしとなる。
51 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 20:34:08 ] >>43 temperingって言ってしまうとbitの順番を入れ替えてるだけで情報的には等価なんだが
52 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 20:38:02 ] xor って順番入れ替えなのか? ってか情報的に等価ってなに?
53 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 20:45:38 ] > 予想以上の盛り上がり 爆笑した
54 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 20:48:46 ] >>49 俺「が」中の人にマークされてるよ。
55 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 20:54:31 ] あんまり書くなとか言われたのか?w ってか、こんだけ無用に情報垂れ流してれば、そりゃマークされるわなw
56 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 21:14:43 ] >>53 すまん、>>51 みたいに言うと語弊があったな bit入れ替えも演算だしxorとも大差無いって事がいいたかった 情報的に等価ってのは表現が違うだけで1:1で対応してて同じ情報を持ってるって話 2進数とグレイコードとかね
57 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 21:19:41 ] ただのビット入れ替えだったらもっと演算量減らせたんだが、全ビットにうまいことXORかけあわせてあんのな
58 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 21:44:45 ] >>56 前にも出たけど、tempering も線形写像だし、そりゃ情報量的には等価だよね。 俺が言いたかったのは、tempering 後の bit 入れ替えだったら乱数性に影響は ないが、tempering(xor) を変更すると乱数性(均等分布)に影響がある、って事。 乱数性に影響ある変更加えたら乱数性の再検証が必要だけど、配置を変えた だけなら、tempering 後の bit 入れ替え相当だから再検証は必要なしでしょ。
59 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 21:46:19 ] そこでTempering Functionの逆写像をだな
60 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 21:47:19 ] そこで tempering を LUT でだな
61 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 21:49:43 ] >>58 前提条件が大分違うな 上の方で出てたレイアウトが違うって話はそもそも1つの乱数を表すデータが連続した32bitに存在するとは限らないレベルだと思って話してた
62 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 22:06:55 ] >>61 ん?前提は一緒だよ? > "1つの乱数を表すデータが連続した32bitに存在するとは限らない" レイアウト変更してから演算するのと、演算後にレイアウト変更するのは等価ってだけだけど。
63 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 22:08:11 ] こだわんなよ。優勝狙うにはレイアウトや演算順序なんて気にしちゃだめだぞ
64 名前:227 ◆eZQcaIaFJs mailto:sage [2009/01/28(水) 22:15:25 ] transum組に勝てる気がしないので、今週末にレポートでっち上げて終了の予定。 前提条件が無茶苦茶だったとはいえ、ここ一ヶ月でかなりの知識を吸収できた 事には感謝しています。また来年も期待してますよー
65 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 22:23:02 ] >>61 それはそうだけどそれが良くてtempering前に演算するのがだめってのが納得いかないって話 結局話題の最初に戻ってきてしまったけど tempering前とtempering後で乱数としての性質が変わってる事も乱数の性質上bitを入れ替えても乱数だって事も分かってるさ でも少なくとも必要な情報が連続しない場所に配置されてた場合にはそのまま利用することは出来ないだろ? tempering前の数列のレイアウト変えた数列も求める乱数列とは異なってかつ一定の操作でその乱数列に出来るって意味では大して違いはないんじゃないかって言ってるんだ
66 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 22:39:21 ] この一連の流れを読んで殆ど理解のレベルを超えてるが、 まぁ、Fixstarsが「ポーティングを最適化する」レベルのプログラマには 全く興味がないというのは理解したw。
67 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 22:41:33 ] >>65 "大して違いはない" ってのは主観だから、そう思うならそれでいいんでないかい? ただ、wikipedia にも書いてあるが、 > 「調律」は生成された乱数のワードのうち数ビットだけを取り出したときの高次元超 > 立方体への均等分布(vビット精度n次均等分布)を改良して理論値に近づけるための > 工夫である(メルセンヌ・ツイスタは「調律」がなくても623次元超立方体に均等分布する) という tempering とレイアウト変更を大した違いと認識しないのは俺には理解できないかな。
68 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 22:53:34 ] >>66 だろうな。さすが灯台陶工台の博士を採ってるだけはある。 Googleとか入社試験に難解な数式解かせるらしいし。
69 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:05:31 ] それにしても >「実用性に優れている」と弊社にて判断した ~~~~~~~~~~~~~~~~~~ とか >※上記の基準をもとに総合的に判断します。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ とかって何だろな?どういう重み付けをするかは主催者の エゴでどうにでもできるという意味か?
70 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:07:23 ] 別に賞品出すわけじゃないから、良ければみんなにくれるんじゃん?w
71 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:07:41 ] >>67 temperingに意味がないって思ってるわけじゃないぞ ただ原因が何であれ取り出せない乱数に意味なんて無いだろうに
72 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 23:08:38 ] ・だんごやさんであること
73 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:12:19 ] >>65 > かつ一定の操作でその乱数列に出来る レイアウト変更した乱数列は、"そのまま使ってもいい" って点が一番違う。
74 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:15:32 ] ・2ch で無用に暴露してないこと
75 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:29:19 ] >>71 それもレイアウト次第じゃないか さっき言った様に32bit連続で配置されない場合もあるし
76 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:32:17 ] >>61 すまん、読み違えてたかも。 > 1つの乱数を表すデータが連続した32bitに存在するとは限らない の1つって、1回に作る 32bit の事だと思ってたんだが違ったかも。
77 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:33:52 ] >>75 ぬぉ、入れ違った。すまんかったっす。勘違いしてた。確かに、32bit 中に空きがある場合はだめっすな。
78 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:35:56 ] なんか、アンカーめちゃくちゃ。これは何かの暗号化?w
79 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:46:50 ] >>77 とりあえず納得してもらえてよかった 少しむきになってしまって恥ずかしい限り それはそうと結局Fixstars賞狙うことにしたけど倍率が気になる
80 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:47:29 ] 実行環境について特に触れてないけど、65nm版やPowerXCellを前提に ストール対策なしのコードを書いて、65nm版又はPowerXCellで実行して 下さいって書いたらそれで通るのかな?
81 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:49:09 ] 大丈夫。ここに書けば近いうちに 90nm で実行します、って追記されるw
82 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:50:30 ] >>80 倍精度でも使うのか?
83 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/28(水) 23:53:01 ] 履歴書に書けるんじゃね? ニートはとりあえず挑戦しとけ
84 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 00:12:15 ] >>66 元々 579 的な解+Cell最適化を想定していたのだけど、 普通に高速化する人が多くて、そういう人達が気分を 害しそうだから賞を追加した、ってのが真相な気がしてる。 空気の読めるインテリw
85 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 02:39:42 ] >>80 無限ストールバグがないだけで、ストール自体はある 無限ストールは普通ハマることはない
86 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 02:57:26 ] >>84 をぃをぃ逆だろ 実用に使える高速なMTが欲しかった >>579 なんて想定してなかった が真相
87 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 03:41:11 ] しかし >>579 の書いてた事は理解出来んのー。 嘘混ざってるせいなのか、単に自分がアホなのか。 GF(2^33)で計数はいいけど、そもそも何を集計すると tempering 的処理がループ外に追い出せるかが思いつかない。
88 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 05:31:02 ] 結局ハッタリって事なんじゃないの?なんかみんな揃って 引っ込みつかなくなってるようにしか見えないんだが…
89 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 08:33:12 ] 少なくとも、数学的チートの方法をこんなに大々的にばらされる事は 想定してなかっただろうなw ここ見てる人たちが次々とチート方法で提出してきて慌てたに一票
90 名前:22 mailto:sage [2009/01/29(木) 10:38:45 ] わかってないんだけど、 信号処理で、波形のままいじるか、周波数空間でいじって戻すか、の差みたいなもんでしょ? アフィン変換の4x4行列(の回転成分)とクォータニオンみたいなもんなんでしょ? 受け入れられない人の理屈が分からない。
91 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 10:53:04 ] 技術的に受け入れてない奴なんていないとおもうけど 単に乱数列を生成って公式に書いてたから抵抗があっただけでしょ 今となっては公式見解も出たしなんの問題もない
92 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:16:02 ] S = Temper(x1) ^ Temper(x2) ^ .... ^ Temper(xn) = Temper(x1 ^ x2 ^ ... ^ xn) ならともかく、「+」で出来るってのが俄かには信じ難い。
93 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:48:22 ] インラインアセンブラ使わないほうがフィクスタ賞に選ばれやすそうだな もともと禁止だったし
94 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:59:48 ] >>92 S = Mod32( GF33( temper(x1) ) * GF33( temper(x2) ) * ... * GF33( temper(xn) ) ) こうですか!?わかりません!教えてください!
95 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 13:29:33 ] いままで触れられてきたどの戦略も、一長一短だなおい。
96 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 13:41:37 ] >>93 なにその団子を入賞させるための賞
97 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 17:14:06 ] 質問です、cellのソフトウエアをcygwinでクロス開発仕様と思っています。 cellbe-cygwin.cvs.sourceforge.net/viewvc/cellbe-cygwin/ こちらのページのrpmを使って、spu-gccは無事インストールできました。 しかし、ppu-gccは $ rpm -i ppu-gcc-4.1.1-5.cygwin.i686.rpm error: Failed dependencies: ppu-sysroot is needed by ppu-gcc-4.1.1-5 ppu-sysroot64 is needed by ppu-gcc-4.1.1-5 と出てしまい、インストールできません。 ppu-sysroot-f7-2.noarch.rpmを探しだし、インストールしようと思いましたが、 $ rpm -i ppu-sysroot-f7-2.noarch.rpm warning: ppu-sysroot-f7-2.noarch.rpm: V3 DSA signature: NOKEY, key ID 77550217 package ppu-sysroot-f7-2 is intended for a linux operating system とでてしまい、やっぱり駄目です。いったいどうすればクロス開発ができるようになるでしょうか。
98 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 17:29:47 ] VMWareにでもLiunx入れたら?
99 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 17:38:25 ] PS3 買えば?w ゲームも出来るよwww
100 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 17:43:46 ] 確かにな。クロス環境を自力で作れない奴が入賞できるわけないしw
101 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 18:09:36 ] >>97 は別にコンテストに出場しているとは言っていないと思うけど
102 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 18:34:10 ] あ、ここってコンテストのスレじゃないんだっけw スマソ
103 名前: ◆iSaGiwaruI mailto:sage [2009/01/29(木) 22:13:25 ] 遅ればせながらギリギリでエントリ。
104 名前:227 ◆eZQcaIaFJs mailto:sage [2009/01/29(木) 22:28:58 ] リアルで大事件が起こって困惑中。二ヶ月先すら見えない状況ですorz >>90 2つの回転行列の補間をするのに、一度クオータニオンに戻して球状補間 するんじゃなく、行列同士を線形補完して直交させれれば終了、みたいな ショートカットが出来るって事ですよね? >>92 en.wikipedia.org/wiki/GF (2) ↑見てもさっぱり分からない罠。締め切り過ぎてからで良いんで、お勧めの 参考書とか有ったら教えてくださいな。
105 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 23:47:39 ] >>104 細かい事に突っ込んで悪いけど、それじゃ結果変わっちゃうので 例えとしてはいまいち。 「行列の積じゃなくてクォータニオンの合成で処理して行列に戻す」 とかがショートカット。
106 名前:579 mailto:sage [2009/01/30(金) 00:29:43 ] なんか席を外している間に fixstars はじまったな。 >>579 ざまぁwみたいな展開を期待していたのだが。 コード公開するタイミング失ったではないか。 >>90 >>104 ニヤニヤ >>33 >尤もハッタリだったら曝せないだろうけどなーwwww もう少し上手く煽れよ。。。
107 名前:579 mailto:sage [2009/01/30(金) 00:30:37 ] >>50 こうですね。わかります。 template<int s,int n,int p>struct M0; template<int s,int n>struct MT{enum{N=M0<s,n,(n>>31 )>::N};}; template<int s>struct M0<s,-624,-1>{enum{N=s};}; template<int s,int n>struct M0<s,n,-1>{enum{ P=M0<s,n-1,-1>::N, N=(1812433253UL*(P^(P>>30 ))+n+624)&0xffffffffUL}; }; template<int s,int n>struct M0<s,n,0>{enum{ P=MT<s,n-624>::N&0x80000000UL, Q=MT<s,n-623>::N&0x7fffffffUL, R=MT<s,n-227>::N, S=Q&1?0x9908b0dfUL:0UL, N=R^((P|Q)>>1 )^S}; }; template<int s,int n>struct T{enum{ P=MT<s,n>::N, Q=P^(P>>11 ), R=Q^(Q<<7)&0x9d2c5680UL, S=R^(R<<15)&0xefc60000UL, N=S^(S>>18 )}; }; template<int s,int n>struct S; template<int s>struct S<s,0>{enum{N=0};}; template<int s,int n>struct S{enum{ N=(unsigned)S<s,n-1>::N+(unsigned)T<s,n-1>::N&0xffffffffUL}; };
108 名前:227 ◆eZQcaIaFJs mailto:sage [2009/01/30(金) 00:41:47 ] >>105 チートしないと60fps出ない環境なんで、誤魔化せる所を探すのに必死です。 今日も境界判定のif文取ったり、エルミート補間を線形補間にしたりとかw >>107 残念ながらC言語onlyな大会でございます。 ja.wikipedia.org/wiki/ %E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%83%A1%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0
109 名前:,,・´∀`・,,)っ-●◎○ mailto:sage [2009/01/30(金) 00:43:00 ] コンパイラが氏ぬwww
110 名前:,,・´∀`・,,)っ-●◎○ mailto:sage [2009/01/30(金) 00:44:09 ] fixstarsはメタプログラミングって使わないんだろうか? テンプレートによる再利用は俺も大好き
111 名前:579 mailto:sage [2009/01/30(金) 00:46:35 ] >>86 つmc_rand_mt_u4
112 名前:,,・´∀`・,,)っ-●◎○ mailto:sage [2009/01/30(金) 00:53:18 ] MTの本質は均等分布性にあるんであって数値の出る順番は本質じゃないと思うんだ 実際64ビット用MTは32ビット版と生成する値の互換をとってない。
113 名前:,,・´∀`・,,)っ-●◎○ mailto:sage [2009/01/30(金) 00:57:18 ] んで、ビットの配置方法が違っても分布の均一性は変わらないわけで 極端な話トランザム(笑)でも再利用性があると思う
114 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 02:20:33 ] まだ登録できたのか
115 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 02:26:21 ] 多分、団子はふぃっくすたーずの中の人から盛り上げるように頼まれてる。
116 名前:,,・´∀`・,,)っ-○◎● mailto:sage [2009/01/30(金) 04:19:00 ] 中の人も一応は最新のIntelチップ相手だと分が悪いのは認識してるらしい。 (当たり前だ) 性能を引き出すことは、弱点を認識することから始まる。
117 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 07:01:33 ] >性能を引き出すことは、弱点を認識することから始まる。 私の現場だと、最早「無駄な努力」と言われてしまう罠。 先日AMDの営業に話を聞いたのだけど、NVIDIAやIntelとの比較でしか性能を語れてないの。 ちょっと同情したw
118 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 10:45:49 ] 未だに13Cycleの壁と闘ってるんだがこのあたりってもうだれもおらんのか? みんなこっちの道をあきらめてSUMを直接求める方向に行ってくれてるならそれはそれでいいんだけど そっちの方向はいくら頑張っても数学に弱いやつは勝てなさそうなんで早々にあきらめてしまった
119 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 11:52:50 ] >>118 比較的素直なSIMD実装でも頑張れば12切れる。
120 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 11:57:47 ] >>119 まじで! じゃあ本番は11台入ってからか 先は長いな
121 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 13:00:17 ] 項数爆発。こりゃだめだ・・・やり直し。
122 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 15:15:37 ] お前ら楽しそうだな・・・ 次があったら俺も参加したいぜ