Linus Torvalds优化Linux内核管道代码 大型CPU系统受益

对于那些使用GNU Make作为其构建系统的用户,从Linux 5.6开始,并行构建时间将快得多。

Linus Torvalds本人围绕内核的管道代码进行了更改,以在读取或写入时使用排他等待。尽管这对于传统或通用的数据管道来说没有多大意义,但是GNU Make作业服务器是一个很大的受益者,因为它依赖管道来限制并行性。

在Linus Torvalds编写的简化测试用例中,此补丁使得测试程序上的上下文切换次数从1100万下降到仅120万,这无疑会受到欢迎,因为无数的安全缓解措施使英特尔方面的上下文切换性能降低了不少。此外,消耗的系统时间也只是原先时间的一小部分。

英特尔的Josh Triplett测试了Linus的补丁,并确认:“我已经在多个不同的系统上测试了管道修复补丁(切换到独占等待队列),在这一个月左右的时间里我没有遇到任何问题。该补丁改善了大型(〜100 CPU)系统上的并行构建时间,包括并行make和使用基于管道的jobserver的其他事物。“

推荐DIY文章
Linus Torvalds优化Linux内核管道代码 大型CPU系统受益
联想19款小新Air14预售:R5 3500U 12GB内存 512GB SSD 3399元
昭和电工已完成开发新一代HAMR碟片 硬盘容量可达80TB
英特尔665p SSD开始上市 1TB起步 读速2GB/s
英特尔11代酷睿Y系列处理器曝光:9W功耗 主频1.2GHz
AMD首款获得英特尔雷电3认证的主板 但仍需支付一定费用