出品|開源中國
作者|局長
上週六 Linux 5。6 合併了專為核心進行徹底修改的 Zstd 原始碼。
雖然 Linux 核心已在多個模組使用了 Zstd,從透明檔案系統壓縮與 Btrfs 之類的資料壓縮,到允許核心模組使用 Zstandard 演算法進行壓縮,但這些 Zstd 程式碼都是比較古老的版本,可以說是已經過時了許久。現在在 Linux 5。6 中,Zstd 核心實現已達到現代標準,並提供了更好的效能。
據介紹,現有的 Zstd 核心程式碼已經有四年的歷史了,而在這段時間裡,Zstd 上游修復了許多錯誤並優化了效能。Linux 5。16 透過合併新程式碼,Btrfs Zstd 解壓速度可以提高約 15%,SquasFS Zstd 解壓速度提高約 15%,F2FS Zstd 解壓速度提高 20% 以上,zRAM 解壓速度提高約 30%,核心 Zstd 映象解壓速度提高了 35% 左右,其他方面也有不錯的最佳化。
此外,在不久的將來,Zstd 還會有更多的效能最佳化,但首先需要達到里程碑——將重大修改後的程式碼合併到主線上。Zstd 1。5。1 應該很快就會發布,此版本將會更好地進行統一併提供最新的改進。
有關更多細節,任何在核心中依賴 Zstd 壓縮/解壓的開發者可以看此項 Git 合併。這個 PR 是幾天前提交的,但 Linus Torvalds 指出,鑑於它的影響,他希望推遲合併,以便有更多時間親自審查程式碼。
如果你對 Zstd 的 CPU 效能基準感興趣,檢視 OpenBenchmarking。org 以瞭解許多不同處理器的綜合排名。
延伸閱讀
Linux 核心即將用上最新的 Zstd 實現
為 Linux 5。16 準備的新版 Zstd 已就緒,最高帶來 35% 的效能提升