|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册
x
TCMalloc是google-perftools套件的一部分, Google-perftools是Google开发的开放源代码C++性能调整工具库, 特别为多线程C++程序的开发提供支持,除了TCMalloc外, Google-perftools还包括了heap-checker, heap-profiler和cpu-profiler等工具, google-perftools在New BSD License下发布。
文档见软件包的doc目录,这里有个使用简介,这里还有个中文的翻译。
下面重点介绍下TCMalloc, TCMalloc是个独立动态库, 使用起来相当简单,在Linux/Unix下可以在不重新编译应用代码的前提下用LD_PRELOAD使用TCMalloc:- $ LD_PRELOAD="/usr/lib/libtcmalloc.so"
复制代码 这里有个用这种方法在不重新编译mysql的前提下用TCMalloc提升mysql性能的例子。
或者把libtcmalloc_minimal(不带heap-checker和heap-profiler的tcmalloc)链接进应用程序中。
TCMalloc为小对象和大对象的内存分配分别进行优化, 并提供Thread Cache和内存Span, Thread Cahce的垃圾回收等特性,使得TCMalloc的性能表现相当让人惊艳,下面是一个用户使用TCMalloc后节省近500M内存的案例:
此外,我们还可以通过环境变量或者程序代码,监测和调整TCMalloc的行为,详见文档。 |
评分
-
查看全部评分
|