找回密码
 FreeOZ用户注册
查看: 3772|回复: 7
打印 上一主题 下一主题

[新技术交流] Google TCMalloc: Google的高效内存分配器

[复制链接]
跳转到指定楼层
1#
发表于 13-5-2009 21:55:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?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:
  1. $ 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的行为,详见文档

评分

参与人数 1威望 +20 收起 理由
flyspirit + 20 谢谢分享!

查看全部评分

回复  

使用道具 举报

2#
发表于 13-5-2009 22:07:46 | 只看该作者
core同学从哪里看到这么多信息?
回复  

使用道具 举报

3#
 楼主| 发表于 13-5-2009 22:14:47 | 只看该作者
原帖由 key 于 13-5-2009 21:07 发表
core同学从哪里看到这么多信息?


也就关注这么点狭窄的领域了,整个Internet翻来覆去也就这点东西了,新东西其实很少,所以发现一个新玩意就挺激动的
回复  

使用道具 举报

4#
发表于 13-5-2009 22:33:26 | 只看该作者
原帖由 coredump 于 13-5-2009 21:14 发表


也就关注这么点狭窄的领域了,整个Internet翻来覆去也就这点东西了,新东西其实很少,所以发现一个新玩意就挺激动的


人肉搜索?不会吧?我是想知道你关注哪些网站而得到这些信息?
回复  

使用道具 举报

5#
 楼主| 发表于 13-5-2009 22:43:11 | 只看该作者

回复 #4 key 的帖子

我关注的领域:
1. C++相关的一切东西
2. Google相关的技术, http://code.google.com和Google的一些技术blogs
3. solidot, slashdot, theserverside, javaeye,itpub之类的IT站点
4. Linux/Unix, GNU Open Source, etc.
5. 各种数据库
6. 分布式技术
7. Web相关的一些技术
8. 偶然碰到的觉得有意思的东西
...
主要积累的一些blog feeds,然后特别关心的就加入mail list, 这样不用特意搜索,一有新的内容看看邮箱和google reader就行了。
回复  

使用道具 举报

6#
发表于 13-5-2009 23:38:00 | 只看该作者
原帖由 coredump 于 13-5-2009 21:43 发表
我关注的领域:
1. C++相关的一切东西
2. Google相关的技术, http://code.google.com和Google的一些技术blogs
3. solidot, slashdot, theserverside, javaeye,itpub之类的IT站点
4. Linux/Unix, GNU Open Source, ...


能share下你的feed list?谢谢
回复  

使用道具 举报

7#
 楼主| 发表于 13-5-2009 23:46:49 | 只看该作者

回复 #6 key 的帖子

也都是些常见的站点,比如codeproject, InfoQ, DevX, Dr.Dobb's , CUJ, Google Groups之类的。特别关注的就mail list伺候,比如我喜欢QT,那么QT的所有mail list都一个不拉的订阅了,反正gmail的空间闲着也是闲着。

评分

参与人数 1威望 +10 收起 理由
key + 10 谢谢分享!

查看全部评分

回复  

使用道具 举报

8#
发表于 14-5-2009 17:57:43 | 只看该作者
coredump发的贴子比较有深度了。
回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 24-2-2025 05:01 , Processed in 0.040644 second(s), 25 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表