Linus亲手优化内核管道代码,make性能大幅提升
2020-02-10 22:01
806 查看
对于那些使用 GNU Make 作为其构建系统的用户,从 Linux 5.6 开始,并行构建时间将快得多。
Linus Torvalds 本人围绕内核的管道代码进行了更改,以在读取或写入时使用排他等待。尽管这对于传统或通用的数据管道来说没有多大意义,但是 GNU Make 作业服务器是一个很大的受益者,因为它依赖管道来限制并行性。
在 Linus Torvalds 编写的简化测试用例中,此补丁使得测试程序上的上下文切换次数从 1100 万下降到仅 120 万,这无疑会受到欢迎,因为无数的安全缓解措施使英特尔设备的上下文切换性能降低了不少。此外,消耗的系统时间也只是原先时间的一小部分。
英特尔的 Josh Triplett 测试了 Linus 的补丁,并确认:“我已经在多个不同的系统上测试了管道修复补丁(切换到独占等待队列),在这一个月左右的时间里我没有遇到任何问题。该补丁改善了大型(〜100 CPU)系统上的并行构建时间,包括并行 make 和使用基于管道的 jobserver 的其它事情。“
相关文章推荐
- ASP.NET性能提升秘诀之管道与进程优化
- java 性能优化:提升 java 代码的运行效率
- java 性能优化:35 个小细节,让你提升 java 代码的运行效率
- 获得性能大幅提升的go程序优化实践,火焰图使用
- Java 性能优化:35 个小细节,让你提升 Java 代码的运行效率
- SQL优化(SQL TUNING)可大幅提升性能的实战技巧之一——让计划沿着索引跑
- SQLServer性能优化之 nolock,大幅提升数据库查询性能
- 记一次SQL调优/优化(SQL tuning)——性能大幅提升千倍以上
- SQLServer性能优化之 nolock,大幅提升数据库查询性能
- 记一次SQL调优/优化(SQL tuning)——性能大幅提升千倍以上
- 详解redis大幅性能提升之使用管道(PipeLine)和批量(Batch)操作
- redis 性能优化优化提升之管道(pipeline)
- 华为C8813Q刷机包 基于乐蛙OS5 优化内核 提升性能 稳定流畅
- SQLServer性能优化之 nolock,大幅提升数据库查询性能
- JAVA性能优化:35个小细节让你提升java代码的运行效率
- [转] ASP.NET 性能提升秘诀之管道与进程优化
- java 性能优化:35 个小细节,让你提升 java 代码的运行效率
- SQLServer性能优化之 nolock,大幅提升数据库查询性能
- Snail GUI 2.1内核开发完成,支持触屏,性能大幅优化
- Java性能优化:30个小细节,提升Java代码运行效率