Linux 7.3 透過緩衝區群組和零拷貝提升 FUSE 性能

By: www.diariobitcoin.com|2026/08/26 20:39:24

**FUSE,這項允許從用戶空間執行檔案系統的技術,可能在 Linux 7.3 中加入 IO_uring 的緩衝區群組和零拷貝的能力。這些變更旨在提升性能、減少內存消耗並避免不必要的數據移動。

  • Linux 7.3 的開發為 FUSE 添加了 IO_uring 的緩衝區群組。
  • 零拷貝旨在避免內核和用戶空間之間的拷貝;其實現需要緩衝區群組,並可能依賴於特定的權限。
  • 在補丁系列中引用的測試報告顯示性能改善,儘管結果並不代表所有 FUSE 的工作負載。

FUSE,Linux 內核的組件,允許從用戶空間構建和執行檔案系統,正朝著在 Linux 7.3 中實現顯著性能提升的方向發展。該版本仍在開發中,並納入了針對 IO_uring 的傳輸進展,旨在減少內存消耗並加速內核與 FUSE 伺服器之間的數據交換。

根據 Phoronix 於 2026 年 8 月 26 日發表的報告,主要的優化包括對 IO_uring 緩衝區群組的支持和零拷貝機制的納入。這項工作還包括錯誤修正和其他調整。可用的文檔和補丁系列將這些功能描述為 FUSE 開發的一部分,因此其細節在穩定版本之前仍可能會變更。

更靈活的緩衝區管理

FUSE 之前的架構在請求的每個條目和其有效載荷緩衝區之間保持著緊密的關係。在實踐中,這可能要求獨立的緩衝區和足夠的容量來容納可能的最大有效載荷大小,即使請求實際上使用的字節數要少得多。

歸因於 Joanne Koong 的補丁系列指出,這種設計並不理想,因為某些類型的請求只需要少量數據,而其他請求則不需要任何有效載荷緩衝區。該方案可能會根據每個操作的實際需求預留過多的內存,這在同時有大量請求的場景中特別重要。

緩衝區群組改變了這種關係,允許伺服器提前註冊緩衝區,並根據條目和請求的需求讓內核使用它們。這樣,條目不再綁定於專用的緩衝區,內核獲得了更大的自由度來在活動操作之間分配有效載荷內存。

這種解耦合可以減少在 IO_uring 上使用 FUSE 所需的內存要求,並為資源分配的新優化鋪平道路。這種優勢不僅在於預留更少的空間,還在於使內存的使用能夠適應每個請求的具體性質。

零拷貝避免中間步驟

同樣的工作線路為 FUSE 的 IO_uring 傳輸添加了零拷貝支持。通過這一機制,伺服器可以直接訪問客戶端的頁面或頁面緩存,而無需先將數據移動到中間緩衝區。

消除這一拷貝可以減少與數據移動相關的工作量,並提高輸入和輸出操作的效率。這一好處對於處理大量信息的負載特別具有吸引力,儘管可用的測試並未為所有系統或應用程序建立一個通用的性能數字。

FUSE 的 passthrough 相關文檔指出,某些模式需要 CAP_SYS_ADMIN 權限,而零拷貝系列則要求啟用由內核管理的緩衝區組。這些安全和配置條件必須在考慮生產環境的機制之前進行評估。

在操作層面上,緩衝區組和零拷貝的組合為內核提供了更好的內存控制,並減少了滿足特定請求所需的步驟數。然而,最終結果將取決於 FUSE 伺服器的實現、數據訪問模式和系統的權限配置。

測試顯示 FUSE 的改進

Joanne Koong 進行了基準測試,以測量所提議變更的影響。根據補丁系列和 Phoronix 引用的結果,一些隨機直接讀取的性能提高了約 20%,從接近 2100 MB/s 開始。這一數字對應於一個具體的測試,並不一定代表所有 FUSE 模式的行為。

這些結果的興趣在於 FUSE 被用來實現文件系統,而不需要將其所有邏輯放入內核中。這種靈活性促進了服務的開發和集成,但也可能引入來自用戶空間、內核和每次操作中涉及的內存區域之間通信的成本。

在處理緩衝區分配和數據拷貝時,Linux 7.3 嘗試減少這一過程中兩個潛在的開銷來源。這一改進可能會轉化為對依賴 FUSE 文件系統的應用程序的更高效響應,儘管開發者和管理員需要檢查其對自身工作流程的影響。

除了這些 IO_uring 的優化外,開發還包括錯誤修正和 FUSE 代碼中的其他變更。可用的信息並未詳細說明每一調整,但將其作為伴隨此功能演變的一部分進行呈現。

大頁面支持仍在等待中

FUSE 的工作還包含支持大頁面的準備,這與內核管理內存頁面的方式有關。然而,這一能力尚未完成,並且不屬於可供一般使用的完整實現。

這一區別很重要,因為準備工作並不等同於已完成的功能。目前,所描述的進展集中在 IO_uring 的緩衝區組、零拷貝、錯誤修正和 FUSE 開發中包含的補充變更上。

因此,Linux 7.3 繼續作為一個不斷演進的平台,其細節可能在最終版本之前發生變化。有興趣採用新功能的用戶應該關注內核的發展,並驗證其 FUSE 伺服器的兼容性,特別是在依賴 CAP_SYS_ADMIN 或特定的 IO_uring 配置時。

該項目的方向是使 FUSE 更加合理地使用內存,並使數據交換所需的額外工作減少。如果測試中觀察到的改進得以保持,這次更新可能為在用戶空間中實現的文件系統提供更快、更高效的基礎。

本內容僅供參考,不構成任何金融、投資、法律或稅務建議。文中提及的任何活動、獎勵、線上活動或相關資訊,不應被視為對購買、出售或交易任何加密資產的推薦、招攬或邀請。加密資產具有高波動性,存在價值損失風險。WEEX服務、產品及相關活動的可用性可能因地區而異。用戶在參與前有責任確保符合當地適用法律法規。

猜你喜歡

iconiconiconiconiconiconiconiconicon
客戶服務:@weikecs
商務合作:@weikecs
量化做市商合作:bd@weex.com