Linus 大佬 21 行代码,Linux 性能狂升 2.6%:开源世界的小优化,大收益
2024年 11 月 9 日 – 开源世界再次见证了 Linux 之父 Linus Torvalds 的非凡实力。近日,他提交了一段仅有 21 行代码的变更,却显著提升了 Linux 系统的多线程性能,令业界惊叹。
小改动,大收益:21 行代码带来的性能提升
Torvalds 的这次代码变更针对的是 x86 架构下的 copy_from_user()
函数,旨在解决 Meltdown 和 Spectre 等安全漏洞带来的性能损耗问题。Meltdown 和 Spectre 漏洞是近年来在 Intel、AMD、Apple 和 ARM 处理器中发现的严重安全漏洞,几乎所有 PC 和智能手机用户都受其影响。为了防御这些漏洞,Linux 等操作系统引入了内核页表隔离技术(KPTI)等缓解措施,但这些措施却导致了处理器性能的显著下降。
Torvalds 的补丁通过修改 copy_from_user()
函数的实现方式,避免了使用 barrier_nospec()
API,从而有效地防止了推测执行带来的安全风险,同时提升了性能。根据内核测试机器人的报告,per_thread_ops
基准测试性能提高了 2.6%。
Linus 的精妙之处:性能与安全的平衡
Torvalds 的这次优化体现了他在性能和安全方面的深厚功底。他找到了在不影响安全性的前提下提升性能的方法,这对于需要高性能和强大安全性的 Linux 系统来说至关重要。
推测执行:现代 CPU 的“双刃剑”
推测执行是现代 CPU 中的一项重要功能,它利用分支预测来预判未来可能需要运行哪些程序代码,以便提前运行并缓存其结果,从而提高程序执行效率。然而,推测执行也带来了安全风险,因为攻击者可以利用推测执行来获取敏感信息。
Meltdown 和 Spectre 漏洞:安全领域的重大挑战
Meltdown 和 Spectre 漏洞是近年来安全领域面临的重大挑战。这些漏洞源于芯片的设计缺陷,几乎所有 PC 和智能手机用户都受其影响。为了防御这些漏洞,操作系统和硬件厂商都付出了巨大的努力。
Linus 的贡献:开源世界的宝贵财富
Linus Torvalds 作为 Linux内核的创始人,一直致力于为开源社区贡献力量。他的这次代码变更再次证明了他深厚的技术实力和对开源社区的贡献。
结语:开源世界的未来
开源软件正在改变着世界,Linus Torvalds 等开源贡献者的努力推动着开源世界的不断发展。相信未来,开源软件将继续为人类社会带来更多福祉。
参考文献
- https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0fc810ae3ae110f9e2fcccce80fc8c8d62f97907
- https://www.theregister.com/2024/11/06/torvaldspatchlinux_performance/
- https://www.zdnet.com/article/linux-meltdown-patch-up-to-800-percent-cpu-overhead-netflix-tests-show/
Views: 0