红联Linux门户
Linux帮助

jemalloc 5.0.0全新版本发布,内存分配管理

发布时间:2017-06-15 09:04:21来源:红联作者:baihuo
jemalloc 发布了全新的 5.0.0 版本。与以前所有的版本不同,新版本不使用自然对齐的“chunks”进行虚拟内存管理,而是使用页面对齐的“extents”。

jemalloc 是一个通用的 malloc(3)实现,它强调了分段回避和可伸缩并发支持。jemalloc 在 2005 年首次作为 FreeBSD libc 分配器使用,2010年,jemalloc 的功能延伸到如堆分析和监控/调优等。现代的 jemalloc 版本依然集成在 FreeBSD 中。

开发团队表示,持续集成现在是开发的重点,后续倾向于保持在各个平台(Linux、FreeBSD、macOS 和 Windows)上的稳定性。因此,后续发版频率可能会逐渐降低。

部分更新内容:

新增 C ++ 新建/删除 operator bindings。

将衰减时间分辨率从秒增加到毫秒。

将 MALLCTL_ARENAS_ALL 添加为固定索引,用于通过 mallctl 访问合并/销毁的 arena 统计信息。

新增互斥量分析,用于收集各种有助于诊断开销/争用问题的统计信息。

在初始化期间检测到无效的配置选项时,可以选择中止 opt.abort_conf。

新增 --with-version = VERSION,以将 jemalloc 嵌入到另一个项目的 git 仓库中使用。

新增 --disable-thp 来支持交叉编译。

新增 --with-lg-hugepage 以支持交叉编译。

新增 mallctl 接口:

background_thread

opt.abort_conf

opt.retain

opt.percpu_arena

opt.background_thread

opt.{dirty,muzzy}_decay_ms

opt.stats_print_opts

arena..initialized

arena..destroy

arena..{dirty,muzzy}_decay_ms

arena..extent_hooks

arenas.{dirty,muzzy}_decay_ms

arenas.bin..slab_size

arenas.nlextents

arenas.lextent..size

arenas.create

stats.background_thread.{num_threads,num_runs,run_interval}

stats.mutexes.{ctl,background_thread,prof,reset}.{num_ops,num_spin_acq,num_wait,max_wait_time,total_wait_time,max_num_thds,num_owner_switch}

stats.arenas..{dirty,muzzy}_decay_ms

stats.arenas..uptime

stats.arenas..{pmuzzy,base,internal,resident}

stats.arenas..{dirty,muzzy}_{npurge,nmadvise,purged}

stats.arenas..bins..{nslabs,reslabs,curslabs}

stats.arenas..bins..mutex.{num_ops,num_spin_acq,num_wait,max_wait_time,total_wait_time,max_num_thds,num_owner_switch}

stats.arenas..lextents..{nmalloc,ndalloc,nrequests,curlextents}

stats.arenas.i.mutexes.{large,extent_avail,extents_dirty,extents_muzzy,extents_retained,decay_dirty,decay_muzzy,base,tcache_list}.{num_ops,num_spin_acq,num_wait,max_wait_time,total_wait_time,max_num_thds,num_owner_switch}

移除--disable-tcache

移除--disable-tls

移除--enable-ivsalloc

移除--with-lg-size-class-group

移除--with-lg-tiny-min

移除--disable-munmap

移除 redzone 支持

软件详情:https://github.com/jemalloc/jemalloc/releases/tag/5.0.0

下载地址:https://github.com/jemalloc/jemalloc/releases/download/5.0.0/jemalloc-5.0.0.tar.bz2

来自:开源中国社区
文章评论

共有 0 条评论