chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

基于內(nèi)部區(qū)域壓實(shí)(IZC)的垃圾回收

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

掃碼添加小助手

加入工程師交流群

? ?

?01 背景

?目前基于閃存的固態(tài)硬盤保持著幾十年前的塊層接口,這在容量超額配置、頁面映射表的DRAM、垃圾回收開銷以及試圖減輕垃圾回收的主機(jī)軟件復(fù)雜性等方面帶來了巨大的代價(jià)。塊層接口向其上層展現(xiàn)出來的是一個(gè)一維的LBA數(shù)組,每個(gè)LBA都可以被讀寫,其最初的引用是為了隱藏存儲(chǔ)介質(zhì)的不同。然而隨著存儲(chǔ)介質(zhì)的迭代,為flash based存儲(chǔ)設(shè)備維護(hù)塊層接口語義代價(jià)越來越大,如flash based SSDs中FTL的運(yùn)轉(zhuǎn)需要大量DRAM,GC需要OP空間,并且設(shè)備請求命令延遲被GC干擾后有抖動(dòng)。NVMe區(qū)域命名空間(ZNS)的設(shè)定為SSD提供了一種全新的接口模式,ZNS作為一種新的存儲(chǔ)接口正在出現(xiàn),邏輯地址空間被劃分為固定大小的區(qū)域,每個(gè)區(qū)域必須按順序?qū)懭?,以便于閃存訪問。

?02 問題

?1.ZNS的IO棧

一般來說,新的存儲(chǔ)接口需要修改軟件棧。對于ZNS,需要修改兩個(gè)主要的IO棧組件,文件系統(tǒng)和IO調(diào)度器。首先,原地更新的文件系統(tǒng),如EXT4,必須被附加記錄的文件系統(tǒng)所取代,如日志結(jié)構(gòu)文件系統(tǒng)(LFS),以消除隨機(jī)更新。因?yàn)長FS的一個(gè)區(qū)段是通過追加記錄按順序?qū)懭氲?,每個(gè)區(qū)段可以被映射到一個(gè)或多個(gè)區(qū)域。其次,IO調(diào)度器必須保證一個(gè)區(qū)的寫請求的有序交付。例如,可以為每個(gè)區(qū)使用一個(gè)無序的隊(duì)列,調(diào)度器只需要確定不同區(qū)之間的服務(wù)順序。ZNS的順序?qū)懸笫沟肸NS只能適用于特定需求的應(yīng)用訪問。

2.增加主機(jī)開銷

在LFS的append logging方案下,臟段的過時(shí)塊必須通過段壓縮(也稱為段清理或垃圾收集)來回收,它將段中的所有有效數(shù)據(jù)轉(zhuǎn)移到其他段,使段變得干凈。壓實(shí)會(huì)調(diào)用大量的復(fù)制操作,特別是當(dāng)文件系統(tǒng)的利用率很高時(shí)。必須進(jìn)行主機(jī)端GC,以換取使用無GC的ZNS SSD,盡管可以避免log-on-log下的重復(fù)GC。主機(jī)端GC的開銷比設(shè)備端GC的開銷要高,因?yàn)橹鳈C(jī)級(jí)塊復(fù)制需要處理IO請求,主機(jī)到設(shè)備的數(shù)據(jù)傳輸,以及讀取數(shù)據(jù)的頁面分配。此外,段壓縮需要修改文件系統(tǒng)元數(shù)據(jù)以反映數(shù)據(jù)的重新定位。此外,段壓縮的數(shù)據(jù)復(fù)制操作是批量進(jìn)行的,因此,許多待寫請求的平均等待時(shí)間是相當(dāng)長的。根據(jù)F2FS--廣泛使用的日志結(jié)構(gòu)文件系統(tǒng)之一的實(shí)驗(yàn),當(dāng)文件系統(tǒng)利用率為90%時(shí),分段壓縮的性能損失約為20%。因此,可以說目前的ZNS只關(guān)注SSD方面的好處,而沒有考慮到主機(jī)的復(fù)雜性增加。為了簡化SSD的設(shè)計(jì),所有復(fù)雜的東西都被傳遞給主機(jī)。

此外,當(dāng)我們通過嵌入更多的閃存芯片來增加SSD的帶寬時(shí),ZNS存儲(chǔ)系統(tǒng)將涉及收益遞減。ZNS設(shè)備的區(qū)域大小將被確定為足夠大,以利用SSD內(nèi)部閃存芯片的并行性。因此,更高帶寬的ZNS SSD將提供更大的區(qū)域大小,而文件系統(tǒng)必須相應(yīng)地使用更大的段大小。然后,主機(jī)遭受到更嚴(yán)重的段壓縮開銷,因?yàn)殚_銷通常與段大小成比例增加。為了提高IO性能,克服收益遞減的問題,需要進(jìn)行主機(jī)-設(shè)備聯(lián)合設(shè)計(jì),將段壓縮的每個(gè)子任務(wù)放在最合適的位置,而不損害原始ZNS的利益,而不是簡單地將GC開銷從SSD轉(zhuǎn)移到主機(jī)。

?03 方法

?為了降低主機(jī)端做垃圾回收所帶來的開銷,本文提出三種方法通過協(xié)同垃圾回收優(yōu)化來降低開銷。

1.基于內(nèi)部區(qū)域壓實(shí)(IZC)的垃圾回收

傳統(tǒng)的段壓實(shí)過程如圖1(a)所示,待回收區(qū)域中所有的有效數(shù)據(jù)都需要讀取到主機(jī)端,再寫到目標(biāo)區(qū)域中。這個(gè)過程需要大量的讀寫以及元數(shù)據(jù)更新操作,會(huì)占用主機(jī)端的資源帶來性能的下降。相比于傳統(tǒng)的段壓實(shí),基于IZC的垃圾回收通過將未修改的有效數(shù)據(jù)的復(fù)制交付給SSD,并且利用SSD的copyback操作進(jìn)行內(nèi)部的數(shù)據(jù)復(fù)制,從而降低主機(jī)端的資源占用,優(yōu)化系統(tǒng)性能。圖1(b)是IZC方案下的壓實(shí)過程,過程如下:普通段壓實(shí)的數(shù)據(jù)拷貝任務(wù)被拷貝卸載(3)所取代,它發(fā)送zone_compaction命令來傳輸塊拷貝信息(即源和目標(biāo)LBA)。因?yàn)槟繕?biāo)數(shù)據(jù)沒有被加載到主機(jī)頁面緩存中,所以不需要相應(yīng)的頁面緩存分配。固態(tài)硬盤內(nèi)部控制器可以有效地安排幾個(gè)讀和寫操作,同時(shí)最大限度地提高閃存芯片的利用率。因此,段壓實(shí)的延遲可以大大減少。此外,存儲(chǔ)內(nèi)的塊復(fù)制可以利用copyback操作。更為具體的執(zhí)行流程建議閱讀原文相關(guān)部分。

62ad58f8-16d9-11ee-962d-dac502259ad0.jpg ?

圖1段壓實(shí)過程對比圖

2.稀疏的順序重寫,對F2FS的Threaded Logging提供支持

為了消除傳統(tǒng)段壓實(shí)的開銷,F(xiàn)2FS提出的Threaded Logging機(jī)制為段壓實(shí)提供了全新的思路。由于ZNSSSD不支持隨機(jī)寫的功能,所以F2FS都是關(guān)閉Threaded Logging機(jī)制。本文提出了影子映射的方式,使得ZNSSSD對Threaded Logging提供支持,從而優(yōu)化段壓實(shí)的開銷。通過TL_open命令打開的zone會(huì)分配一個(gè)影子zone,并通過映射表來記錄對應(yīng)關(guān)系,同時(shí)維護(hù)一個(gè)bitmap記錄有效信息。例如,在圖2中,SSD為zone1(1)分配了一個(gè)LogFBG,F(xiàn)BG 15。對于TL_opened區(qū),該區(qū)的數(shù)據(jù)塊被分配到兩個(gè)FBG中,即原始FBG(FBG6)和LogFBG(FBG 15)。因此,這兩個(gè)FBG必須作為該區(qū)的映射FBG來維護(hù)。為了處理一個(gè)讀取請求,SSD通過比較目標(biāo)LBA和WP來識(shí)別最新數(shù)據(jù)的塊位置。如果目標(biāo)LBA在WP后面(目標(biāo)LBA < WP),則訪問LogFBG。否則,原始FBG將被訪問,以滿足讀取請求。當(dāng)TL_opened區(qū)最終被關(guān)閉時(shí),LogFBG取代了原來的FBG,它被重新分配以備將來使用。

62c20064-16d9-11ee-962d-dac502259ad0.jpg ?

圖2Threaded Logging支持示意圖

考慮插入順序,有兩種模式:

以LBA為順序插入:如圖2,當(dāng)SSD收到對第0塊的兩個(gè)寫請求時(shí),它從FBG 6讀取A和B的跳過的塊,將它們與主機(jī)發(fā)送的P和Q的塊合并,并在LogFBG處寫下一個(gè)完整的塊。在處理完對第0塊的寫請求后,SSD可以通過檢查該區(qū)的有效位圖來感知第1塊將被跳過。為了讓W(xué)P提前準(zhǔn)備好對第2塊的寫請求,被跳過的那塊必須被復(fù)制到LogFBG中。因此,在處理一個(gè)寫請求后,如果以下邏輯塊在有效位圖中被標(biāo)記為有效,ZNS+ SSD在調(diào)整WP的同時(shí)將它們復(fù)制到LogFBG。這種類型的插入被稱為LBA有序插入(LP),每次插入都是在區(qū)的當(dāng)前WP進(jìn)行,以遵循LBA有序的寫入約束。

以PPA為順序插入:在圖2的例子中,在0號(hào)和2號(hào)的寫入請求到達(dá)之前,3號(hào)可以被復(fù)制,因?yàn)樗鼈兪褂貌煌拈W存芯片。如果第1塊已經(jīng)被復(fù)制,即使第2塊和第4塊的寫請求還沒有到達(dá),第5塊也可以被復(fù)制。我們稱這種技術(shù)為PPA有序插入(PP),它只考慮PPA有序的寫約束。每當(dāng)一個(gè)閃存頁在LogFBG被編程時(shí),PPA-ordered plugging就會(huì)檢查對應(yīng)的閃存塊中映射到下面閃存頁的塊的有效性,并提前發(fā)出該閃存塊的所有可能的插入操作。然而,如果發(fā)出過多的插入操作,可能會(huì)干擾用戶的IO請求處理。為了解決這個(gè)問題,當(dāng)目標(biāo)閃存芯片處于空閑狀態(tài)時(shí),插入操作將在后臺(tái)進(jìn)行處理。如果沒有足夠的空閑時(shí)間,當(dāng)該區(qū)的WP必須通過跳過的區(qū)塊位置時(shí),它們就會(huì)被處理。

3.混合段回收策略

通過上述的兩個(gè)策略,目前有兩種垃圾回收的方式。為了權(quán)衡在垃圾回收時(shí)選取哪種方式,本文提出了兩種垃圾回收策略的cost-benefit計(jì)算公式,在垃圾回收時(shí)總是選取開銷最小的垃圾回收方式。Npre-inv和Nvalid分別表示pre-invalid塊的數(shù)量和有效塊的數(shù)量。fplugging(N)是N個(gè)區(qū)塊的存儲(chǔ)內(nèi)插入成本。Nnode和Nmeta分別表示修改后的節(jié)點(diǎn)塊和元數(shù)據(jù)塊的數(shù)量。fcopy(N)和fwrite(N)分別是N塊的復(fù)制成本和寫入成本。Bcold表示預(yù)測的未來冷塊遷移的收益。公式中部分值很難計(jì)算或者無法計(jì)算,本文對這些值采取近似估計(jì)。

62d6ce72-16d9-11ee-962d-dac502259ad0.jpg ? 62e20166-16d9-11ee-962d-dac502259ad0.jpg ?

圖3cost-benefit權(quán)衡公式

?04 實(shí)驗(yàn)結(jié)果

?評估實(shí)驗(yàn)是基于FEMU的SSD仿真器評估了ZNS+ SSD的性能。相關(guān)延遲配置如下:

62f1bc1e-16d9-11ee-962d-dac502259ad0.jpg ?

表1實(shí)驗(yàn)平臺(tái)設(shè)置

?實(shí)驗(yàn)性能對比包含三個(gè)方面,分別為段壓實(shí)、Threaded Logging和SSD內(nèi)部芯片利用率。

?段壓實(shí)性能:該實(shí)驗(yàn)主要基于IZC的垃圾回收策略效果進(jìn)行評估。通過將copy操作卸載到SSD內(nèi)部,并且利用copyback操作,優(yōu)化垃圾回收過程,降低垃圾回收開銷。實(shí)驗(yàn)結(jié)果驗(yàn)證了IZC策略可以很好的降低垃圾回收開銷。

630e507c-16d9-11ee-962d-dac502259ad0.jpg ?

圖4段壓實(shí)實(shí)驗(yàn)結(jié)果

Threaded Logging性能:該實(shí)驗(yàn)主要對支持Threaded Logging后垃圾回收的性能評估。ZNS+在所有基準(zhǔn)上都優(yōu)于ZNS和IZC。ZNS+的吞吐量比ZNS高約1.33-2.91倍。與IZC相比,ZNS+將varmail工作負(fù)載的節(jié)點(diǎn)和元數(shù)據(jù)寫入流量減少了約48%。在所有的工作負(fù)載中,超過85.8%的回收段是由ZNS+的線程記錄處理的,因?yàn)槎ㄆ跈z查點(diǎn)方案限制了預(yù)無效塊的數(shù)量。

6340324a-16d9-11ee-962d-dac502259ad0.jpg ?

圖5支持Threaded Logging實(shí)驗(yàn)結(jié)果

SSD內(nèi)部芯片利用率:該實(shí)驗(yàn)主要對SSD內(nèi)部芯片利用率進(jìn)行評估。在所有的工作負(fù)載中,IZC和ZNS+的芯片利用率都比ZNS高。ZNS+(LP)可以利用兩個(gè)連續(xù)的寫請求之間的空閑時(shí)間,而ZNS+(PP)可以通過利用空閑的閃存芯片,將插入操作與正常的寫請求處理重疊起來。因此,與ZNS+(PP)相比,ZNS+(LP)顯示出更高的芯片利用率。

634842fa-16d9-11ee-962d-dac502259ad0.jpg ?

圖6ZNSSSDvsStream SSD性能對比實(shí)驗(yàn)結(jié)果

05總結(jié)

目前的ZNS接口在主機(jī)上施加了很高的存儲(chǔ)回收開銷,以簡化SSD。為了優(yōu)化整體的IO性能,必須將每個(gè)存儲(chǔ)管理任務(wù)放在最合適的位置,并使主機(jī)和SSD合作。為了將塊復(fù)制操作卸載到SSD上,本文設(shè)計(jì)了ZNS+,它支持存儲(chǔ)區(qū)內(nèi)的壓實(shí)和Threaded Logging。與傳統(tǒng)的段壓實(shí)相比,在性能和SSD內(nèi)部芯片利用率有很大的改進(jìn)。

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

    關(guān)注

    33

    文章

    9005

    瀏覽量

    153761
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    2019

    瀏覽量

    66076
  • 帶寬
    +關(guān)注

    關(guān)注

    3

    文章

    994

    瀏覽量

    42185

原文標(biāo)題:如何優(yōu)化ZNS下的垃圾回收?

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    固態(tài)硬盤垃圾回收方法

    由于NAND閃存的固有限制,寫前擦除和擦除粒度較大,基于NAND Flash的固態(tài)硬盤(SSD)需要執(zhí)行垃圾回收以重用失效頁。然而垃圾回收帶來的高開銷會(huì)顯著降低SSD的性能,也會(huì)直接影
    發(fā)表于 12-03 10:50 ?2次下載
    固態(tài)硬盤<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>方法

    基于邏輯區(qū)間熱度的垃圾回收算法

    針對現(xiàn)有的NAND閃存垃圾回收算法中回收性能不高,磨損均衡效果差,并且算法內(nèi)存開銷大的問題,提出了一種基于邏輯區(qū)間熱度的垃圾回收算法。該算法
    發(fā)表于 12-05 18:27 ?0次下載
    基于邏輯區(qū)間熱度的<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>算法

    電子垃圾回收產(chǎn)業(yè)的隱秘世界

    如今的電腦和手機(jī)等電子設(shè)備換代頻繁、淘汰迅速,因此電子垃圾回收利用也成了一個(gè)在全球蓬勃發(fā)展的產(chǎn)業(yè)。
    發(fā)表于 01-22 19:20 ?1.2w次閱讀

    Jvm垃圾回收機(jī)制及性能調(diào)優(yōu)實(shí)戰(zhàn)

    JVM中自動(dòng)檢測并移除不再使用的數(shù)據(jù)對象的這種機(jī)制稱為:垃圾回收,簡稱GC。JVM通過使用垃圾收集器及使用相應(yīng)的垃圾回收算法將內(nèi)存中不再被使
    發(fā)表于 04-03 14:31 ?2次下載

    交大發(fā)布可回收垃圾分揀機(jī)器人,實(shí)現(xiàn)助力全國垃圾分類回收工作

    6月4日消息,交大中英國際低碳學(xué)院可回收垃圾分揀機(jī)器人,更是打破國外技術(shù)壟斷,可實(shí)現(xiàn)每小時(shí)分揀垃圾5400次,并在大量垃圾中精準(zhǔn)識(shí)別可回收
    的頭像 發(fā)表于 06-04 14:31 ?3198次閱讀

    智能垃圾回收機(jī)器人的應(yīng)用優(yōu)勢是什么

    為什么需要垃圾回收機(jī)器人? 首先,垃圾分類回收是實(shí)現(xiàn)地球資源循環(huán)利用至關(guān)重要的一環(huán),對于可持續(xù)發(fā)展有重大意義。垃圾分類也是對付
    發(fā)表于 07-22 09:26 ?2304次閱讀

    智能垃圾回收機(jī)器人的應(yīng)用優(yōu)勢有哪些

    為什么需要垃圾回收機(jī)器人? 首先,垃圾分類回收是實(shí)現(xiàn)地球資源循環(huán)利用至關(guān)重要的一環(huán),對于可持續(xù)發(fā)展有重大意義。垃圾分類也是對付
    發(fā)表于 08-17 16:08 ?4571次閱讀

    生活垃圾數(shù)據(jù)化分類回收方法及其回收系統(tǒng)(機(jī)械部分)

    一種生活垃圾數(shù)據(jù)化分類回收方法及其回收系統(tǒng)(機(jī)械部分)(1).doc 上傳完成 刪除 標(biāo)題一種生活垃圾數(shù)據(jù)化分類回收方法及其
    發(fā)表于 11-05 18:18 ?0次下載

    詳解JVM的垃圾回收算法和垃圾回收

    JVM 垃圾回收機(jī)制是對堆中沒有使用的對象進(jìn)行回收,那么判斷對象是否“存活”就至關(guān)重要。在判斷對象是否“存活”的方法中,我們會(huì)介紹引用計(jì)數(shù)算法和可達(dá)性分析法。
    的頭像 發(fā)表于 03-29 13:55 ?1704次閱讀
    詳解JVM的<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>算法和<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>器

    Kubernetes容器垃圾回收的策略

    Kubernetes的垃圾回收由kubelet進(jìn)行管理,每分鐘會(huì)查詢清理一次容器,每五分鐘查詢清理一次鏡像。在kubelet剛啟動(dòng)時(shí)并不會(huì)立即進(jìn)行GC,即第一次進(jìn)行容器回收為kubelet啟動(dòng)一分鐘后,第一次進(jìn)行鏡像
    的頭像 發(fā)表于 08-15 09:16 ?1751次閱讀

    JVM入門之垃圾回收算法

    根據(jù)如何判定對象是垃圾,垃圾回收算法分為兩類:1、 「引用計(jì)數(shù)式垃圾收集」 (判定垃圾是通過引用計(jì)數(shù)器)別名:直接
    的頭像 發(fā)表于 02-10 11:40 ?1066次閱讀
    JVM入門之<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>算法

    使用圖像識(shí)別來識(shí)別可回收和不可回收垃圾

    電子發(fā)燒友網(wǎng)站提供《使用圖像識(shí)別來識(shí)別可回收和不可回收垃圾.zip》資料免費(fèi)下載
    發(fā)表于 06-20 09:17 ?0次下載
    使用圖像識(shí)別來識(shí)別可<b class='flag-5'>回收</b>和不可<b class='flag-5'>回收</b>的<b class='flag-5'>垃圾</b>

    智能垃圾回收箱及其控制系統(tǒng)

    智能高效遠(yuǎn)程控制智能垃圾回收箱本文設(shè)計(jì)了基于機(jī)械傳動(dòng)、嵌入式系統(tǒng)和物聯(lián)網(wǎng)技術(shù)的智能垃圾回收箱及控制系統(tǒng),包括結(jié)構(gòu)、硬件和軟件設(shè)計(jì),以及基于機(jī)智云后臺(tái)服務(wù)器的操作系統(tǒng),實(shí)現(xiàn)了用戶信息識(shí)
    的頭像 發(fā)表于 04-13 08:10 ?1936次閱讀
    智能<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>箱及其控制系統(tǒng)

    智能垃圾回收箱控制系統(tǒng)硬件設(shè)計(jì)

    智能高效遠(yuǎn)程控制智能垃圾回收箱控制系統(tǒng)硬件部分的選型與設(shè)計(jì)是整個(gè)產(chǎn)品的基礎(chǔ),所有功能的實(shí)現(xiàn)都要圍繞其進(jìn)行開發(fā)。本章對智能垃圾回收箱控制系統(tǒng)的硬件進(jìn)行詳細(xì)設(shè)計(jì)。智能
    的頭像 發(fā)表于 04-13 08:10 ?1389次閱讀
    智能<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>箱控制系統(tǒng)硬件設(shè)計(jì)

    智能垃圾回收箱功能實(shí)驗(yàn)

    需要系統(tǒng)地介紹智能垃圾回收箱軟件硬件設(shè)計(jì)完成后的設(shè)備運(yùn)行狀況,包括正常工作和問題調(diào)試。同時(shí),也要描述當(dāng)所有設(shè)備正常工作時(shí)智能垃圾回收箱的操作流程。01硬件模塊的試驗(yàn)在智能
    的頭像 發(fā)表于 05-24 08:10 ?894次閱讀
    智能<b class='flag-5'>垃圾</b><b class='flag-5'>回收</b>箱功能實(shí)驗(yàn)