Linux Kernel 6.8將改進核心網路程式碼TCP效能最高提升多達40%
1 月8 日Linux Kernel 6.7 正式版發布,此次更新包含多達1.7 萬個非合併更改和1000 多個合併更改。而接下來就是Linux Kernel 6.8 了,這個還在開發中的核心新版本已經有些變化吸引我們的注意,那就是谷歌工程師Xiaoyan Li 所在的團隊對Linux Kernel 核心網路程式碼的關鍵改進。
Xiaoyan Li 團隊對核心網路架構進行了分析和重組,這項工作的重點內容是優化快取行消耗並添加保護措施以確保未來的變更不會倒退。這種優化讓在多並發連線時的TCP 效能出現大幅提升,尤其是在AMD EPYC 伺服器平台上。
Xiaoyan Li 團隊表示:
目前,網路堆疊中的大量變數結構是按照時間順序、邏輯順序組織的,有時還會按照快取行存取進行組織。
這次新提交的補丁嘗試重新組織核心網路堆疊變量,以最大限度地減少資料傳輸階段的快取行消耗,具體來說,我們研究了TCP/IP 堆疊和TCP 中的快速路徑定義。
測試顯示,在AMD 平台上,前後核心版本的TCP 效能最高提升為44.47%,不過在英特爾平台上的提升就沒這麼高了,大約提升了5% 左右,不過對資料中心來說,伺服器的TCP多並發連接性能能提高5% 也是很大的改進了。