首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

内存占用减少3.7%,开发者发布补丁集减少编译Linux内核时的最大内存

编译 | 禾木木     

出品 | CSDN(ID:csdnnews)

开发者 Thomas Weißschuh 在近日发布了一组八个补丁,旨在减少编译 Linux 内核时的最大内存使用量。对于在内存受限的发行版中构建内核的开发者来说,新补丁减少了 Swap 和版本创建时间。

Weißschuh 近日发布的补丁集侧重于在编译 Linux 内核时可以减少最大内存使用量。尤其是,使用 objtool 处理 vmlinux.o 对象时的内存使用情况,这也是内核构建过程中最耗费内存的一个步骤。

安装新的补丁集后,在处理 vmlinux.o 时,循环中的 malloc()相关函数会传递给循环外的 calloc()函数,从而将峰值内存使用量减少 3.7%;在通过 Thomas 编译内核时减少结构重定位吼,将内存使用量减少 3.8%;并通过优化结构符号的布局将内存使用量减少 0.5%。

此外,补丁集还进行了其他方面的优化,只是优化程度并不明显。

简而言之,正在审查的这个补丁集应该有助于减少编译 Linux 内核时的内存使用峰值,从而帮助编译 Linux 内核。

除了发布新的补丁集外,小编了解到 Linux 6.3 将进一步改进可重启序列 (RSEQ) 以提高计算性能。

Linux 内核在几年前已经合并了可重启序列(RSEQ),GNU C 库已经使用 RSEQ 对每个 CPU 数据执行更快的用户空间操作。RSEQ 将在明年发布的 Linux 6.3 中会进一步改进。通过增加每个 CPU 计数器、修改每个 CPU 旋转锁、读取/写入每个 CPU 环形缓冲区等来避免原子操作(线程调度机制不会中断的操作),RSEQ 可以显著优化性能,从而提供出色的基准测试结果

无论是新发布的补丁集,还是说即将改进的序列都将进一步提升性能。

参考链接:

https://www.techgoing.com/developers-release-patch-set-to-reduce-maximum-memory-usage-when-compiling-the-linux-kernel/

https://www.phoronix.com/news/Linux-Kernel-Build-Less-RAM

https://www.techgoing.com/linux-6-3-will-further-improve-the-restartable-sequence-rseq-to-improve-computing-performance/

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20221230A07QH100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券