您的位置:首页 > 其它

几种内存操作性能比较

2013-04-25 16:24 197 查看
Comparisation

TLSF Two-Level Segregate Fit, mainly on RTOS

jemalloc Jason Evans's malloc, used by firefox

dlmalloc Doug Lea’s malloc, been around forever

ptmalloc2 Doug Lea’s malloc, extended to support per-thread arenas. Default allocator for glibc2.3

TCMalloc Google’s malloc, claims to be 6x faster than ptmalloc2

nedmalloc claims to be faster than tcmalloc

Hoard also claims to be very fast



jemalloc安装和使用:

wget http://www.canonware.com/download/jemalloc/jemalloc-2.0.1.tar.bz2
tar xvf jemalloc-2.0.1.tar.bz2

cd jemalloc-2.0.1/ && ./configure && make && make install

ldconfig

gcc -o test test.c -ljemalloc



tcmalloc安装和使用:

wget http://google-perftools.googlecode.com/files/google-perftools-0.99.2.tar.gz
tar zxvf google-perftools-0.99.2.tar.gz

cd google-perftools-0.99.2/

./configure

make && make install

echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf

/sbin/ldconfig

使用tcmalloc代替glibc缺省malloc:

gcc -o test test.c -ltcmalloc



nedmalloc安装和使用:

Refer to the Readme.txt



hoard安装和使用:

make linux-gcc-x86

cp libhoard.so /usr/local/lib/

ldconfig

gcc -o test test.c -lhoard



valgrind --tool=memcheck --leak-check=full ./test

valgrind检查不出jemalloc/tcmalloc的内存泄露,可以检测dlmalloc/ptmalloc/hoard





To be continued

References:

Benchmarks http://locklessinc.com/benchmarks.shtml

http://www.canonware.com/jemalloc/index.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: