Entries from 2007-09-01 to 1 month
プロトコル: プロトコルバージョン try_lock (ロックできなかったら immediate return) の追加 サーバ側: データ構造の最適化 (key の簡易 hash と state を合体させて独自の short array に) クライアント側 auto_reconnect 機能 TCP_NODELAY
from linux and SINGLE_LISTEN_UNSERIALIZED_ACCEPT. おもしろい。以下引用。 ---------- Forwarded message ---------- To: linux-kernel@vger.kernel.org From: Linus Torvalds <torvalds@transmeta.com> Subject: Re: [PATCH] Re: Negative scalability by removal of lock_kernel</torvalds@transmeta.com>…
ただ、私の記憶が正しければ、1プロセスしか accept に成功しないにもかかわらず全プロセスがwakeされる (=全ての accept がなんらかの結果 (ほとんどの場合 EAGAIN) を返す) というのが、Thundering Herd の最大の問題だったはずです Kazuho@Cybozu Labs:…
・バックエンドへの同一リクエストを束ねるような仕組みを実装する Kazuho@Cybozu Labs: キャッシュシステムの Thundering Herd 問題 これを考え中。nfslockd みたいな形で実装 (ただし、ロックがただちに獲得できたのか、ロックが解除されたのかを通知する…
mysql> select * from (select '' as t) as t1 where t=0; +---+ | t | +---+ | | +---+ 1 row in set (0.00 sec) mysql> select * from (select '' as t) as t1 where t='0'; Empty set (0.00 sec)
追加してみました。コンパイルすらしていなくて恐縮ですが、興味のある方はお試しいただければ。ダウンロードはこちらです。
Kazuho@Cybozu Labs: システムコールの最適化の余談だけど、http://kzk9.net/column/unixfastestfilecopy.htmlを見ていると、やはり mmap(2) 経由だと余計なスワップ処理が発生して遅くなることがあるのがわかる。何を期待するかにもよるけど、バッファキャ…
テクノラティプロフィール
PowerPC で swifty 動かないのって聞かれて、これは憧れのイーヤーイーヤーヨー命令 (eieio = enforce in-order input/output だっけ?) を使う機会かと喜びいさんだのだが違ったみたい。IBM - Japan によると、lwsync を使うのが正解 (lwsync が無い場合は s…
movq xm0, ptr [addr]; movd eax, xm0; psrldq xm0, 4; // xm0 >>= 32; movd edx, xm0; というパターンを同僚に教えてもらった。勉強になります。 Yes, I see that in Volume 3, the System Programming Guide, on page 7-3, section 7.1.1, "Guaranteed Ato…
OOインターフェイスで Cache::FastMmap の10倍超えた。そろそろ pathtraq.com への導入にむけた機能追加する。 $ make && perl -Iblib/lib -Iblib/arch -Ilib benchmark/all.pl 500 Cache::FastMmap Cache::Swifty swifty_direct Write (16 bytes): Rate Cac…
また速くなった。しかしめんどくさい。 $ make && perl -Iblib/lib -Iblib/arch -Ilib benchmark/all.pl Write (16 bytes): Rate Cache::FastMmap Cache::Swifty swifty_direct Cache::FastMmap 8.92/s -- -92% -94% Cache::Swifty 106/s 1093% -- -24% swif…
swiftyは、リードについてはロックフリーの共有メモリキャッシュなので、プロセス内のメモリとほぼ変わらない速度で読み込みが可能です (ライトは flock & funlock が1回発生します)。 キャッシュはリードが卓越するものだし、だったらプロセス内メモリと同…
ぶっちゃけ、 The official recommendation is now to use FileCache instead of SharedMemoryCache. The reasons for this include:1) FileCache provides equal or better performance in all cases that we've been able to test. This is due to all mod…
$ make && perl -Iblib/lib -Iblib/arch -Ilib benchmark/all.pl Write (16 bytes): Rate Cache::FastMmap Cache::Swifty swifty_direct Cache::FastMmap 8.95/s -- -91% -93% Cache::Swifty 94.3/s 954% -- -26% swifty_direct 128/s 1329% 36% -- Read (16…
Pathtraq は DELL PowerEdge SC1435 で動かしてるんだけど、買ってきたメモリの増設に失敗中。2GB x 4枚買ってきたんだけど、うち1枚が faulty て言われる。お店に言ったらすぐに代替品を送ってくれたんだけど (USER'S SIDE++) 、それを挿すとメモリバス全…
re: Kazuho at Work: Swifty-0.02 and Perl Binding 書き込み時flockは、書き込み中にプロセスが死んだ場合に検知するため userland mutex も選択できるようにするといいかも (wait(2) で検知とかもできるし) データ書き込み後、atomic に commit されるまで…