Linux 6.9为SLUB分配器提供了更多改进

2024年 3月 25日 53.7k 0


Linux 6.8放弃了SLAB分配器 在v6.5中弃用之后,现在只是离开SLUB来完成所有的分配任务。对于Linux 6.9来说,SLAB移除将继续进行清理,并进行更多的SLUB改进。

Vlastimil Babka提交了Linux 6.9的SLUB(SLAB)更改,并将其突出显示为:

- 自由加载优化(周成明)

当每个CPU的slot耗尽,并且从CPU部分列表加载了一个新的slot时,优化加载以避免irq启用/禁用循环。这导致了3.5%的性能改进"perf benched messaging"测试。

- SLAB移除后的内核引导参数清理(宋雄伟)

由于有两种不同的主要slab实现,我们有引导参数前缀为slab_和sub_,一些后来变成别名,因为两个实现获得了相同的功能(即slab_nomrance vs sub_nomrance)。为了最终摆脱特定于实现的名称,规范的和文档化的参数现在都以slab_为前缀,slub_variants被弃用,但仍然有效。

- SLAB_ktrl_缓存创建标志清理(Vlastimil Babka)

标志对#define值进行了硬编码,添加新值时变得繁琐且容易出错。通过一个枚举来分配值,该枚举负责提供唯一的位数。还不推荐仅由SLAB使用的SLAB_MEM_SPREAD,因此自SLAB移除以来,这是一个无操作。给它指定一个显式的零值。 标记使用的移除在相应的子系统中独立处理,最终移除计划用于下一个版本的剩余使用。

-其他清理和修复(周成明、王晓蕾、郑业健)

包括删除未使用的代码或函数参数以及修复memleak。

此次拉动 provides the full list of patches making up this pull request of code since merged for Linux 6.9.

相关文章

塑造我成为 CTO 之路的“秘诀”
“人工智能教母”的公司估值达 10 亿美金
教授吐槽:985 高校成高级蓝翔!研究生基本废了,只为房子、票子……
Windows 蓝屏中断提醒开发者:Rust 比 C/C++ 更好
Claude 3.5 Sonnet 在伽利略幻觉指数中名列前茅
上海新增 11 款已完成登记生成式 AI 服务

发布评论