tcmalloc安装,使用以及解析(一)

  由于想接触tcmalloc,所以索性对tcmalloc做一个彻底点的分析,以下是一些分析的心得。

 

一. 安装

  tcmalloc在gperftools之中,故想要使用tcmalloc,就得先安装gperftools。在linux下,其安装步骤如下:

  1. tar xzvf gperftools-2.1.tar.gz

  2. cd gperftools-2.1

  3. ./configure --enable-frame-pointers

  4. make

  5. make install

  这里需要注意一点,在linux下,如果直接./configure,那么make时会报出编译错误:error Cannot calculate stack trace: will need to write for your environment。解决方法如上所示,在configure时加入选项--enable-frame-pointers。

  如果想定制化安装,请自行参阅gperftools的安装文档,即源码包中的INSTALL文件。

 

二. 使用

  对于tcmalloc的使用,还是用程序来说明吧。

  tcmalloc_sample.cpp:

#include <iostream>
#include <google/tcmalloc.h>

int main()
{
    char *cp = (char *)tc_malloc(23 * sizeof(char));
    tc_free(cp);
    cp = NULL;
    return 0;
}

  注:以下的步骤都是以第一部分所述的安装方式为前提而进行的。

  1. 编译:g++ -o tcmalloc_sample -g tcmalloc_sample.cpp -ltcmalloc

  2. 运行: ./tcmalloc_sample

  如果遇到以下错误:

  error while loading shared libraries: libtcmalloc.so.4: cannot open shared object file: No such file or directory

  那么就需要为系统指定libtcmalloc的加载路径:

  1. echo /usr/local/lib > /etc/ld.so.conf.d/libtcmalloc.conf

  2. ldconfig

  现在运行./tcmallco_sample命令,就不会出现上面提到的错误了。

 

 (To Be Continued...)

 

 

 

posted on 2013-10-15 15:40  husoling  阅读(7333)  评论(1编辑  收藏  举报

导航