源码城

 找回密码
 免费注册
快捷导航
搜索
查看: 158|回复: 0

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

[复制链接]
  • TA的每日心情
    难过
    2019-6-4 00:22
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    4519

    主题

    4613

    帖子

    6万

    积分

    管理员

    Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88Rank: 88

    积分
    68024
    发表于 2020-2-11 09:31:04 | 显示全部楼层 |阅读模式
    对于这些使用 GNU Make 作为其建立系统的用户,从 Linux 5.6 开始,并行建立时间将快得多。

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


    在 Linus Torvalds 编写的简化测试用例中,此补丁促使测试程序上的上下文切换次数从 1100 万增长到仅 120 万,这无疑会深受欢迎,因为无数的安全减轻举措让英特尔方面的上下文切换性能增加了不少。此外,消耗的系统时间也只是原来时间的一小部份。


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




    上一篇:韩国政府计划采用基于 Linux 的 Open OS 以取代 Windows 7
    下一篇:微软解决Win 7死机问题后又遇死机问题

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?免费注册

    x
    回复

    使用道具 举报

    高级模式
    B Color Image Link Quote Code Smilies

    本版积分规则