January 2011
2 posts
最速の memset64 を求めて 今回のお題は char 幅じゃなくて word 幅の memset 、つまりプロトタイプだと void* memset64(void* destination, uint64_t image, int num_words); をどれだけ高速に行うかという話。なぜ高速化するかというと、塗りつぶす領域がけっこうでかいから。 候補 1: REP STOS void* memset64(void* d, uint64_t i, int n) { asm("cld; rep stosq;" :: "D"(d), "a"(i), "c"(n) : "memory"); return d; } 最近の CPU はクソ賢い。そのため、下手に手で loop unrolling するよりも、逆に CPU...
Jan 28th
33 notes
December 2010
0 posts
やります: RubyConf2011旅費出しますから行ってきて
ぢっと通帳をみた結果とりあえず一回は実行可能という結論に達したのでやります。おまえらの旅費俺で持ちますから行ってきてください。 趣意 つらつらと思い返してみると俺がRubyConf参加するようになったことに関して森脇大悟さんの果たしてくれた役割はとてつもなく大きいわけですよ。やっぱ単身見知らぬ海外の土地に出かけていくっていうのは西成に物見遊山に行くのより不安な行為じゃないですか。海外とか初めてだけど連れてってくれる人がいる、これが最終的にRubyConf行く決心がついた理由なので。森脇さんにはいくら感謝しても足りません。最近ご無沙汰してしまっており失礼していますが、この場を借りて再度お礼申し上げたい。その節は大変お世話になりました。 でだな、まあ森脇さんへのお礼はそれはそれとして、世の中にはcharityとかpay it...
Dec 31st
40 notes