繼Windows 11 ReFS 改進(jìn)后,Linux 也獲得 F2FS、Btrfs、EXT4 性能提升
在最近的 Windows 11 預(yù)覽版中,微軟一直在逐步強(qiáng)化對 ReFS 的支持,自 Build 25281 之后的版本都已經(jīng)允許用戶在 ReFS 分區(qū)上安裝系統(tǒng)。此后,該公司添加了更多基于 ReFS 的功能,例如“Dev Drive”VHD 卷。此外,微軟最近還將基礎(chǔ) ReFS 版本更新為 3.10 。
IT之家發(fā)現(xiàn),Linux 在其新文件系統(tǒng)上也取得了一些穩(wěn)步進(jìn)展。從最近的一些 Linux 內(nèi)核補(bǔ)丁來看,Linux 已經(jīng)支持閃存友好文件系統(tǒng) (F2FS)、B-Tree 文件系統(tǒng) (Btrfs) 和第四擴(kuò)展文件系統(tǒng) (EXT4) ,并獲得了顯著的性能提升。
例如,Btrfs 在 SATA SSD 上的性能提升了大約 10%,也許在 NVMe SSD 上的提升更高:
始終以 64KiB 塊大小讀取,讀取的實(shí)際塊大小從 64KiB 開始到 512K 結(jié)束。即使在最壞的情況下也可以帶來更好的性能:
- 使用補(bǔ)?。?04.81MiB / s
- 沒有補(bǔ)丁:369.30MiB / s
在 SATA SSD 上性能提升約 10%。
除此之外,EXT4 文件系統(tǒng)也獲得了許多優(yōu)化:
在這個周期中,ext4 中有許多主要的清理工作:
- data=journal 寫入路徑已得到顯著清理和簡化,并減少了 Jan Kara 的大量 data=journal 特例。
- Ojaswin Muhoo 已經(jīng)用多塊分配器中的紅黑樹替換了用于跟蹤已用于 inode 預(yù)分配的范圍的鏈表。這提高了執(zhí)行大量隨機(jī)分配寫入的工作負(fù)載的性能。
- 感謝 Kemeng Shi 在多塊分配器中進(jìn)行了大量清理和錯誤修復(fù)。
- Matthew wilcox 已將用于讀取和寫入 ext4 頁面的代碼路徑轉(zhuǎn)換為使用 folio。* Jason Yan 繼續(xù)將 ext4_fill_super () 分解為更小的函數(shù),以提高維護(hù)和理解的便利性。
- Josh Triplett 為 ext4 用戶空間 API 創(chuàng)建了一個 uapi 頭文件。
當(dāng)然,F(xiàn)2FS 也獲得了一定改進(jìn):
增強(qiáng):
- 支持分區(qū)設(shè)備的非二次冪區(qū)域大小
- 刪除在范圍緩存中共享 rb_entry 結(jié)構(gòu)
- 重構(gòu) f2fs_gc 以在緊急情況下調(diào)用檢查點(diǎn) - 支持 iopoll
總的來說,Linux 6.4 版本應(yīng)該會在性能方面帶來相當(dāng)不錯的表現(xiàn),敬請期待。