[MacrayKV] tcmalloc introduction
来源:互联网 发布:神硕加人软件 编辑:程序博客网 时间:2024/06/14 11:40
TCmalloc is used in MacrayKV as its underlying memory allocator. Here is some notes on TCmalloc.
tcmalloc motivation:
1. 50 nanoseconds of TCMalloc v.s 300 nanoseconds of glibc 2.3 malloc( which is called ptmalloc2 )2. reduce lock contention for multi-threaded program.
3. space-efficient representation of small objects (<= 32K)
usage
link with -ltcmalloc
overview
1. small allocations are satisfied from thread-local cache.
2. objects are moved from a central object pool to thread-local cache as needed
3. periodic garbage collections are run to migrate object from thread-local cache back to central pool
4. large objects (>32K) are directly allocated from the central heap using a page-level(4K aligned) allocator.
small object allocation
1. the 32K space is divided into about 170 size-class. gaps between classes are vary from 8 to ~2K
2. direct allocate from local > direct allocate from central > allocate from sys and then allocate from central
large object allocation
1. a large object size (> 32K) is rounded up to a page size
reference: http://goog-perftools.sourceforge.net/doc/tcmalloc.html
- [MacrayKV] tcmalloc introduction
- TCMalloc
- TCMalloc
- TCMalloc
- TCMalloc
- TCMalloc
- TCMalloc
- tcmalloc
- tcmalloc
- Tcmalloc
- [MacrayKV] An innovative parallel testing framework
- GooglePerformanceTools--tcmalloc
- tcmalloc 要点
- 关于tcmalloc
- tcmalloc介绍
- tcmalloc使用说明
- 19 tcmalloc
- 再说TCMalloc
- (第三板斧)上班奴的特征:今天你“被奴”了吗?
- 第十周项目5-贪财的富翁
- 用oracle logminer挖不出数据报In Memory Undo is unsupported
- mysql触发器在一个表上插入的同时修改本表的数据
- Java-求平均值应用程序
- [MacrayKV] tcmalloc introduction
- oracle 创建 递增序列 递增触发器
- 工厂方法模式
- 富翁傻帽了。。。
- 信息解码
- Documentation/filesystems/adfs.txt
- Codeforces —— 359B Permutation
- 专利申请常识随笔
- SQLHelper数据库.net通用类