几种内存操作性能比较

来源:互联网 发布:类似sai mac 编辑:程序博客网 时间:2024/06/01 07:12

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


原创粉丝点击