Categories
科技報導

Linus Torvalds 優化內核管道代碼 大型CPU系統受益



對於那些使用 GNU Make 作為其構建系統的用戶,從 Linux 5.6 開始,並行構建時間將快得多。 Linus Torvalds
本人圍繞內核的管道代碼進行了更改,以在讀取或寫入時使用排他等待。儘管這對於傳統或通用的數據管道來說沒有多大意義,但是 GNU Make
作業服務器是一個很大的受益者,因為它依賴管道來限制並行性。

Linus Torvalds 優化內核管道代碼 大型CPU系統受益 1

在Linus Torvalds 編寫的簡化測試用例中,此補丁使得測試程序上的上下文切換次數從1100 萬下降到僅120 萬,這無疑會受到歡迎,因為無數的安全緩解措施使英特爾方面的上下文切換性能降低了不少。此外,消耗的系統時間也只是原先時間的一小部分。

英特爾的 Josh Triplett 測試了 Linus
的補丁,並確認:“我已經在多個不同的系統上測試了管道修復補丁(切換到獨占等待隊列),在這一個月左右的時間裡我沒有遇到任何問題。該補丁改善了大型( 〜100
 CPU)系統上的並行構建時間,包括並行 make 和使用基於管道的 jobserver 的其他事物。 “

消息來源:phoronix