今天發布了一組用於啟用 Sapphire Rapids C0.x 空閒狀態支持的 Linux 內核補丁,這可以大大提高最新一代 Xeon 可擴展服務器的能效,同時還有助於為繁忙的用戶提供可能的渦輪增壓優勢CPU 內核,以提高整體系統性能。
C0.2 空閒狀態是第 4 代 Xeon 可擴展“Sapphire Rapids”的新增功能,是 POLL 和 C1 狀態之間的空閒狀態。
Intel Linux 工程師 Artem Bityutskiy 用今天的內核補丁解釋:
根據我的測量,SPR C0.2 空閒狀態比 Linux 節能 5-20% POLL 狀態,其延遲接近於 POLL 延遲。
當 CPU 在 C0.2 中休息時,節省的功率會增加繁忙 CPU 的功率預算。這樣,C0.2 可以提高繁忙 CPU 的渦輪增壓並提高性能。
…
與 POLL 相比,C0.2 具有更高的延遲,但它具有顯著的節能效果。
…
結論:即使 C0.2 駐留率很小 (~10%),hackbench 也顯示出一些性能改進。隨著更大的 C0.2 駐留,改進更加明顯。
對於那些擔心延遲的人來說,使用這些補丁可以使用“intel_idle.states_off=2”模塊選項禁用 C0.2 狀態。此外,還有一個 sysfs 接口可以嘗試 C0.1 空閒狀態,但在測試中沒有像 C0.2 那樣提供明顯的功耗優勢。
此 Sapphire Rapids C0.2 對 Linux 的空閒狀態支持現已在 內核郵件列表。希望它能得到很好的審查,並且這個用於 SPR Xeon 服務器的節能功能將在今年夏天成功登陸 v6.4 週期。一旦確定了主線的發展軌跡,我還將運行一些性能基準測試和能效比較。