ネタとして古いのは否めない。
ちょうど一年前に関連するもの書いていたんだけど。
LD_PRELOAD でなくてビルド時にリンクさせる。
x86_64 な GNU/Linux でのみ試した。
- libunwind
http://ftp.twaren.net/Unix/NonGNU/libunwind/
- google-perftools
http://code.google.com/p/google-perftools/downloads/list
いずれも ./configure ; make ; make install なりなんなりで入れとく
必要なら ldconfig
(かったるいので、その後 libunwind, google-perftools 共に RPM つくった)
- MySQL
configure 時に
--with-mysqld-ldflags="-ltcmalloc" つける
個人的には --with-mysqld-ldflags="-ltcmalloc -lstatic" かな
いれたあとは ldd で見たり mysqld 起動して lsof してみたりする
ベンチをとるならやっぱり sysbench で。
「とりあえずこうやっとけ」という項目は気がむいたらまとめる。
追記:
なんか、「ruby tcmalloc」で見に来るひとがときどきいるみたいなので追記。
Ruby Enterprise Edition
は、ビルド時に(可能なら)tcmalloc を使うようにしてくれるっぽいよ。
tar玉展開して、 installer.rb をみればそれっぽいのがみてとれるよ。
source/distro 以下には google-perftools がある。
なので powered by tcmalloc な ruby を使うなら、これがいいんじゃないかな。
0 件のコメント:
コメントを投稿