1. tcmalloc中文版:http://shiningray.cn/tcmalloc-thread-caching-malloc.html2. heapprofiler:http://gperftools.googlecode.com/svn/trunk/doc/heapprofile.html...
分类:
其他好文 时间:
2015-04-30 10:22:18
阅读次数:
111
现象
线上的服务出现coredump,堆栈为:
#0 0x000000000045d145 in GetStackTrace(void**, int, int) ()
#1 0x000000000045ec22 in tcmalloc::PageHeap::GrowHeap(unsigned long) ()
#2 0x000000000045eeb3 in tcmalloc::Page...
分类:
其他好文 时间:
2015-04-06 18:45:36
阅读次数:
394
一. 原理tcmalloc就是一个内存分配器,管理堆内存,主要影响malloc和free,用于降低频繁分配、释放内存造成的性能损耗,并且有效地控制内存碎片。glibc中的内存分配器是ptmalloc2,tcmalloc号称要比它快。一次malloc和free操作,ptmalloc需要300ns,而t...
分类:
其他好文 时间:
2015-03-13 18:26:40
阅读次数:
414
1、解决依赖关系和优化所需的组件编译安装nginx需要事先需要安装开发包组"Development Tools" 。同时,安装pcre-devel包,用yum安装即可安装TCMalloc和google-perftools(TCMalloc只是google-perftools的一个组件,主要是优化内存...
分类:
其他好文 时间:
2014-12-18 01:28:40
阅读次数:
286
1.下载mysql的源码包,进行编译安装(略)2.下载安装google-perftoolswgethttps://lnamp-web-server.googlecode.com/files/google-perftools-1.7.tar.gz
wgethttp://ftp.twaren.net/Unix/NonGNU//libunwind/libunwind-0.99.tar.gz3.64位的系统需要安装libunwind软件包tarzxvfli..
分类:
数据库 时间:
2014-11-22 23:23:15
阅读次数:
482
前面三篇译文《TCMalloc:线程缓冲的Malloc》、《使用TCMalloc的堆栈检查》、《使用TCMalloc进行堆栈分析》介绍了TCMalloc的基本原理,以及堆栈分析和检查工具,TCMalloc优点很多,比glibc 2.3的malloc快、自带的堆栈工具可以轻松找出内存瓶颈和内存泄漏,给服务器开发指明了一条新的道路。...
分类:
其他好文 时间:
2014-10-20 17:22:31
阅读次数:
275
虽然经过研究发现TCMalloc不适合我们现有的游戏框架,但意外收获发现TCMalloc可以大幅度提高MYSQL 性能及内存占用,这里给出配置及测试的结果:...
分类:
数据库 时间:
2014-10-20 17:18:23
阅读次数:
310
前一篇译文《使用TCmalloc的堆栈检查》,介绍了Tcmalloc进行堆栈检查,今天翻译《heap-profiling using tcmalloc》,了解如何 TCmalloc进行堆栈分析。...
分类:
其他好文 时间:
2014-10-16 14:48:52
阅读次数:
201
在前一篇译文《TCMalloc:线程缓冲的Malloc》详细讲解了TCMalloc的工作原理和特点,今天翻译《heap-checking using tcmalloc》,了解Tcmalloc堆栈检查。...
分类:
其他好文 时间:
2014-10-15 21:49:41
阅读次数:
236
TCMalloc要比glibc 2.3的malloc(可以从一个叫作ptmalloc2的独立库获得)和其他我测试过的malloc都快。ptmalloc在一台2.8GHz的P4机器上执行一次小对象malloc及free大约需要300纳秒,而TCMalloc的版本同样的操作大约只需要50纳秒。malloc版本的速度是至关重要的,因为如果malloc不够快,应用程序的作者就倾向于在malloc之上写一个自己的内存释放列表。这就可能导致额外的代码复杂度,以及更多的内存占用――除非作者本身非常仔细地划分释放列表的大小...
分类:
编程语言 时间:
2014-10-13 11:28:29
阅读次数:
263