一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用于閃存的多核加速文件系統(tǒng)調(diào)研實驗及分析

SSDFans ? 來源:SSDFans ? 2023-06-19 09:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 背景

隨著固態(tài)硬盤帶寬的快速增長,其訪問延遲在不斷縮小,在CPU核數(shù)的不斷增長下,我們希望文件系統(tǒng)可以配合這種核數(shù)的擴展盡量釋放SSD的全速帶寬,但是在過去的實踐中,傳統(tǒng)文件系統(tǒng)只對于傳統(tǒng)的HDD等設(shè)備具有更好的多核擴展性支持,通過在NVMe SSD上的實驗發(fā)現(xiàn),當(dāng)核數(shù)擴展時文件系統(tǒng)的性能表現(xiàn)較差。

2. 調(diào)研實驗及分析

1) 實驗設(shè)置

在每個核上運行一個進程,并按照從1到72的規(guī)模擴展CPU核數(shù),每個進程運行60秒,并執(zhí)行創(chuàng)建文件、寫操作、同步操作、刪除文件等操作內(nèi)容。在此過程中測試XFS、ext4、SpanFS、F2FS和模擬理想文件系統(tǒng)對于不同類型設(shè)備的吞吐量數(shù)據(jù)。

2) 實驗結(jié)果

16b17fa4-0e2f-11ee-962d-dac502259ad0.png

實驗結(jié)果顯示,現(xiàn)存文件系統(tǒng)對于NVMe SSD的多核擴展性支持相對較差,而對于傳統(tǒng)的HDD和SATA SSD的擴展性具有接近于理想條件下的支持。同時最右邊的圖表顯示,在72核的規(guī)模之下,大部分文件系統(tǒng)無法高效利用NVMe SSD的高速帶寬。

3) 原因分析

i. 并發(fā)控制層的鎖緩存爭用

對于文件系統(tǒng)中支持并發(fā)訪問的共享鎖,由于鎖的計數(shù)值需要在各核之間共享,那么就會引入計數(shù)器的緩存一致性問題,因此當(dāng)核數(shù)增加時這種維護開銷就會更加明顯;

ii. 內(nèi)存數(shù)據(jù)結(jié)構(gòu)層的順序化

LFS將內(nèi)存數(shù)據(jù)結(jié)構(gòu)分為三個區(qū)域:inode表、inode區(qū)域和data區(qū)域,對于每個區(qū)域,F(xiàn)2FS都會用一個radix樹的結(jié)構(gòu)進行管理,并且在每一棵樹上用讀寫鎖來進行并發(fā)控制。隨著并發(fā)寫者數(shù)量的增加,訪問這三種樹時會造成嚴重的順序化,進而造成性能的下滑。

iii. 空間分配層的數(shù)據(jù)化

雖然F2FS采用了多頭日志的形式并行化IO請求,但是由于各個溫度的數(shù)據(jù)間的內(nèi)部依賴,實際的數(shù)據(jù)持久化請求會被序列化(例如為了保證F2FS的沖突一致性,數(shù)據(jù)塊持久化必須先于inode的持久化,同時文件inode的持久化必須在目錄數(shù)據(jù)塊更新之前)。因此,這種多頭日志的設(shè)計對于擴展IO吞吐量沒有很明顯的優(yōu)勢。

3. 設(shè)計

為了充分利用多核架構(gòu)和現(xiàn)代NVMe SSD的高帶寬特性,我們設(shè)計了Max-針對閃存的多核加速文件系統(tǒng),與F2FS的架構(gòu)對比圖如下:

16c0f128-0e2f-11ee-962d-dac502259ad0.png

根據(jù)實驗分析的三個層面的問題,分別給出解決方案:

1) 設(shè)置每內(nèi)核讀者信號量,讀訪問可以并發(fā)進行,每個內(nèi)核維護一個讀者計數(shù),各個內(nèi)核的計數(shù)值互不相關(guān),避免了在內(nèi)核間維護緩存一致性的開銷。當(dāng)有一個寫請求出現(xiàn)時,各個內(nèi)核不再處理新的讀請求,把當(dāng)前正在進行的讀請求處理完成后再處理寫者的寫訪問。利用CPU調(diào)度器來高效檢查每內(nèi)核計數(shù)值,不必引入額外開銷。

2) 將內(nèi)存數(shù)據(jù)結(jié)構(gòu)的索引劃分為多個文件單元,每個文件單元包含單個文件的 inode 表項、inode 頁和數(shù)據(jù)頁,利用多棵樹的索引實現(xiàn)并行化。

3) 將每種類型的日志區(qū)域切分為更小粒度的日志,每個小日志負責(zé)自己空間的分配,各小日志之間的空間分配互不干擾。

4. 實驗效果

16d80c5a-0e2f-11ee-962d-dac502259ad0.png

實驗結(jié)果顯示,MAX在數(shù)據(jù)訪問和元數(shù)據(jù)訪問帶寬都實現(xiàn)了較好的多核可擴展性,與原始的F2FS等文件系統(tǒng)相比具有良好的優(yōu)化效果。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19888

    瀏覽量

    235098
  • SSD
    SSD
    +關(guān)注

    關(guān)注

    21

    文章

    2983

    瀏覽量

    119571
  • 調(diào)度器
    +關(guān)注

    關(guān)注

    0

    文章

    98

    瀏覽量

    5497

原文標題:用于閃存的多核加速文件系統(tǒng)

文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    Linux網(wǎng)絡(luò)文件系統(tǒng)的注冊與掛載過程分析

    本文主要對Linux網(wǎng)絡(luò)文件系統(tǒng)的注冊與掛載過程進行分析
    發(fā)表于 10-13 16:28 ?1269次閱讀
    Linux網(wǎng)絡(luò)<b class='flag-5'>文件系統(tǒng)</b>的注冊與掛載過程<b class='flag-5'>分析</b>

    串行閃存和MPFS/FAT文件系統(tǒng)不會掛載該怎么辦?

    串行閃存任務(wù)驅(qū)動器中添加一些狀態(tài)來擦除整個芯片,然后根據(jù)MHC選擇寫入正確的MBR部分。這樣做嗎?這似乎是最通用的方法,特別是因為用于串行閃存驅(qū)動器的文件系統(tǒng)注冊是在硬件實例基本上完成
    發(fā)表于 08-08 11:09

    Linux文件系統(tǒng)課程

    本章學(xué)習(xí)目標理解什么是文件系統(tǒng)了解文件系統(tǒng)工作原理理解Fedora Core Linux文件系統(tǒng)的結(jié)構(gòu)掌握Fedora Core Linux文件系統(tǒng)的類型、權(quán)限和修改方法掌握如何安裝、
    發(fā)表于 04-10 17:07 ?0次下載

    基于μC/OS-II的文件系統(tǒng)設(shè)計

    本文提出了基于μC/OS-II 的一個文件系統(tǒng)的設(shè)計與實現(xiàn)方法。通過分析文件系統(tǒng)中的 層次結(jié)構(gòu)和功能模塊,給出了文件系統(tǒng)的詳細設(shè)計方案,包括
    發(fā)表于 06-17 10:48 ?10次下載

    NTFS文件系統(tǒng),NTFS文件系統(tǒng)是什么意思

    NTFS文件系統(tǒng),NTFS文件系統(tǒng)是什么意思 NTFS是Windows NT以及之后的Windows 2000、Windows XP、Windows Server 2003、Windows Server 2008
    發(fā)表于 03-29 10:38 ?6216次閱讀

    XfS文件系統(tǒng),XfS文件系統(tǒng)是什么意思

    XfS文件系統(tǒng),XfS文件系統(tǒng)是什么意思 XfS文件系統(tǒng)是SGI開發(fā)的高級日志文件系統(tǒng),XFS極具伸縮性,非常健壯。所幸的是SGI將其移植到了Lin
    發(fā)表于 03-29 10:39 ?4390次閱讀

    基于NAND閃存文件系統(tǒng)YAFFS在嵌入式系統(tǒng)中的應(yīng)用

      目前,針對NOR Flash設(shè)計的文件系統(tǒng)JFFS/JFFS2在嵌入式系統(tǒng)中已得到廣泛的應(yīng)用;隨著NAND作為大容量存儲介質(zhì)的普及,基于NAND閃存文件系統(tǒng)YAFFS(Yet A
    發(fā)表于 09-01 10:10 ?1389次閱讀
    基于NAND<b class='flag-5'>閃存</b>的<b class='flag-5'>文件系統(tǒng)</b>YAFFS在嵌入式<b class='flag-5'>系統(tǒng)</b>中的應(yīng)用

    28335實用版SD卡文件系統(tǒng)實驗

    tms320f28335實用版SD卡文件系統(tǒng)實驗
    發(fā)表于 06-22 15:01 ?0次下載

    基于閃存YAFFS文件系統(tǒng)的索引機制的改進_李紀扣

    基于閃存YAFFS文件系統(tǒng)的索引機制的改進_李紀扣
    發(fā)表于 03-16 09:33 ?0次下載

    實驗五 基于busybox的根文件系統(tǒng)制作實驗-2016

    基于busybox的根文件系統(tǒng)制作實驗-2016
    發(fā)表于 09-15 08:52 ?10次下載

    文件系統(tǒng)是什么?淺談EXT文件系統(tǒng)歷史

    在先前關(guān)于Linux文件系統(tǒng)的文章中,我很想去深入地討論更多EXT文件系統(tǒng)的特性的信息。所以,首先讓我們來回答這個問題:什么是文件系統(tǒng)?一個文件系統(tǒng)應(yīng)該遵循以下特點。
    發(fā)表于 06-28 09:03 ?5969次閱讀
    <b class='flag-5'>文件系統(tǒng)</b>是什么?淺談EXT<b class='flag-5'>文件系統(tǒng)</b>歷史

    FATFS文件系統(tǒng)詳解

    一、文件系統(tǒng)負責(zé)管理和存儲文件信息的軟件機構(gòu)稱為文件管理系統(tǒng),簡稱文件系統(tǒng)。即在磁盤上組織文件
    發(fā)表于 11-29 09:51 ?30次下載
    FATFS<b class='flag-5'>文件系統(tǒng)</b>詳解

    Esp8266閃存文件系統(tǒng)LIttleFS

    Esp8266閃存文件系統(tǒng)LIttleFS
    發(fā)表于 12-06 17:21 ?18次下載
    Esp8266<b class='flag-5'>閃存</b><b class='flag-5'>文件系統(tǒng)</b>LIttleFS

    用于Linux的最佳通用文件系統(tǒng) Linux文件系統(tǒng)的安裝

    為您的計算機選擇正確的文件系統(tǒng)可能是一個困難的過程。您可能會想知道:為什么文件系統(tǒng)很重要?有沒有適用于安裝 Linux 的特定文件系統(tǒng)? 事實證明,有兩種
    發(fā)表于 08-03 10:22 ?496次閱讀
    適<b class='flag-5'>用于</b>Linux的最佳通用<b class='flag-5'>文件系統(tǒng)</b> Linux<b class='flag-5'>文件系統(tǒng)</b>的安裝

    Linux的文件系統(tǒng)特點

    Linux的文件系統(tǒng)特點 文件系統(tǒng)要有嚴格的組織形式,使得文件能夠以塊為單位進行存儲。 文件系統(tǒng)中也要有索引區(qū),用來方便查找一個文件分成的多
    的頭像 發(fā)表于 11-09 14:48 ?1669次閱讀
    Linux的<b class='flag-5'>文件系統(tǒng)</b>特點