面向傳統(tǒng)文件系統(tǒng)的NVM塊設(shè)備驅(qū)動關(guān)鍵技術(shù)研究
發(fā)布時(shí)間:2020-03-19 20:04
【摘要】:新型非易失內(nèi)存作為下一代存儲介質(zhì),具有只比DRAM內(nèi)存低一個(gè)數(shù)量級的讀寫速度,DRAM內(nèi)存一樣的可字節(jié)尋址。非易失內(nèi)存既可充當(dāng)內(nèi)存又可充當(dāng)外存,將其融入現(xiàn)有計(jì)算機(jī)體系結(jié)構(gòu)充滿著挑戰(zhàn)和機(jī)遇。非易失內(nèi)存塊設(shè)備驅(qū)動能將非易失內(nèi)存虛擬成一個(gè)塊設(shè)備,供傳統(tǒng)文件系統(tǒng)使用。相對傳統(tǒng)塊設(shè)備,非易失內(nèi)存塊設(shè)備能將傳統(tǒng)文件系統(tǒng)的性能提高一千倍。但是傳統(tǒng)文件系統(tǒng)在使用非易失內(nèi)存時(shí),也存在著一些問題。首先,由于用戶習(xí)慣和文件系統(tǒng)元數(shù)據(jù)的高訪問率,傳統(tǒng)文件系統(tǒng)對非易失內(nèi)存的寫入存在嚴(yán)重的不均衡性,會影響非易失內(nèi)存的使用壽命。其次,文件系統(tǒng)往非易失內(nèi)存中寫入數(shù)據(jù)塊時(shí),突然的斷電可能會造成數(shù)據(jù)塊只寫入了部分?jǐn)?shù)據(jù)。最后,在傳統(tǒng)文件系統(tǒng)中,用戶應(yīng)用一般使用緩存IO進(jìn)行文件讀寫。在文件緩存IO中,頁高速緩存與非易失內(nèi)存之間的數(shù)據(jù)拷貝降低了文件系統(tǒng)性能。本文設(shè)計(jì)實(shí)現(xiàn)了一個(gè)非易失內(nèi)存塊設(shè)備驅(qū)動NVMBD。針對傳統(tǒng)文件系統(tǒng)使用非易失內(nèi)存存在的上述問題,我們在NVMBD中實(shí)現(xiàn)了轉(zhuǎn)換層優(yōu)化技術(shù)和塊設(shè)備IO請求處理優(yōu)化技術(shù)。轉(zhuǎn)換層優(yōu)化技術(shù)利用轉(zhuǎn)化層實(shí)現(xiàn)了非易失內(nèi)存的磨損平衡和數(shù)據(jù)塊的原子寫入。轉(zhuǎn)換層主要維護(hù)非易失內(nèi)存中邏輯塊與物理塊之間的映射關(guān)系。轉(zhuǎn)換層將同一邏輯塊重復(fù)寫負(fù)載映射到眾多物理塊,一定程度上實(shí)現(xiàn)了非易失內(nèi)存物理塊的磨損平衡。轉(zhuǎn)換層使用寫時(shí)拷貝(copy-on-write)更新數(shù)據(jù)的同時(shí),使用日志確保邏輯塊與物理塊映射關(guān)系建立的原子性,從而保證了數(shù)據(jù)塊寫入的原子性。塊設(shè)備IO請求處理優(yōu)化技術(shù)對文件緩存IO中的部分塊設(shè)備IO請求處理進(jìn)行了優(yōu)化,將非易失內(nèi)存中的數(shù)據(jù)頁映射到文件的頁高速緩存,省去了文件的頁高速緩存與非易失內(nèi)存之間的數(shù)據(jù)拷貝。經(jīng)過實(shí)驗(yàn)測試,塊設(shè)備IO請求處理優(yōu)化技術(shù)將傳統(tǒng)文件系統(tǒng)的性能提高了約一倍。
【圖文】:
文件系統(tǒng)性能對于文件系統(tǒng)的性能測試,我們不僅自己寫了測試代碼進(jìn)行測試,還使用了測試。IOzone 是一個(gè)文件系統(tǒng)測試的開源工具,其可以測試 write,re-write,,random read 等模式下的硬盤的性能。在文件系統(tǒng)性能測試中,我們使用的 EXT4。為了對比體現(xiàn)出 BMAP 的作用,我們制作了一個(gè)簡單的非易失內(nèi)存 SNVMBD。將 NVMBD 中的 BMAP 功能刪除就得到了 SNVMBD。對一般文件系統(tǒng)而言,文件數(shù)據(jù)是以4KB數(shù)據(jù)塊的形式存儲在存儲器中。一塊對應(yīng)于文件頁高速緩存中的數(shù)據(jù)頁。在實(shí)驗(yàn)中,我們寫了一個(gè)用戶應(yīng)用讀的 1000 個(gè) 4KB 數(shù)據(jù)頁,并記錄下了文件讀取所花費(fèi)的時(shí)間。圖 5-2 中左圖。我們分別在基于 NVMBD 和 SNVMBD 的 EXT4 和 XFS 文件系統(tǒng)上,在一讀取 1B,256B,1024B 和 4096B 數(shù)據(jù)。四條曲線隨著讀取數(shù)據(jù)的增大體現(xiàn)的近。無論在一個(gè)文件的數(shù)據(jù)頁上讀取多少數(shù)據(jù),文件系統(tǒng)都需要一個(gè)塊設(shè)備器中讀取 4KB 數(shù)據(jù)。其時(shí)間的差異主要來源于從內(nèi)核空間往用戶空間所拷不同。在 EXT4 和 XFS 中,,有 BMAP 的文件系統(tǒng)所消耗的周期大約為沒有半。BMAP 將文件系統(tǒng)性能提高了一倍。
圖 5 3 MMAP 性能 BMAP 對文件系統(tǒng) MMAP 性能的影響。MMAP立,文件數(shù)據(jù)讀寫,存儲器同步。映射建立只是建。文件數(shù)據(jù)讀寫時(shí)會觸發(fā)缺頁中斷從存儲器讀取文寫到存器。其中后兩個(gè)步驟涉及到了塊設(shè)備的讀msync 即為存儲器同步;趽碛 BMAP 的 NVMBCPU 周期都大概是沒有 BMAP 文件系統(tǒng)的一半。
【學(xué)位授予單位】:上海交通大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP333
本文編號:2590650
【圖文】:
文件系統(tǒng)性能對于文件系統(tǒng)的性能測試,我們不僅自己寫了測試代碼進(jìn)行測試,還使用了測試。IOzone 是一個(gè)文件系統(tǒng)測試的開源工具,其可以測試 write,re-write,,random read 等模式下的硬盤的性能。在文件系統(tǒng)性能測試中,我們使用的 EXT4。為了對比體現(xiàn)出 BMAP 的作用,我們制作了一個(gè)簡單的非易失內(nèi)存 SNVMBD。將 NVMBD 中的 BMAP 功能刪除就得到了 SNVMBD。對一般文件系統(tǒng)而言,文件數(shù)據(jù)是以4KB數(shù)據(jù)塊的形式存儲在存儲器中。一塊對應(yīng)于文件頁高速緩存中的數(shù)據(jù)頁。在實(shí)驗(yàn)中,我們寫了一個(gè)用戶應(yīng)用讀的 1000 個(gè) 4KB 數(shù)據(jù)頁,并記錄下了文件讀取所花費(fèi)的時(shí)間。圖 5-2 中左圖。我們分別在基于 NVMBD 和 SNVMBD 的 EXT4 和 XFS 文件系統(tǒng)上,在一讀取 1B,256B,1024B 和 4096B 數(shù)據(jù)。四條曲線隨著讀取數(shù)據(jù)的增大體現(xiàn)的近。無論在一個(gè)文件的數(shù)據(jù)頁上讀取多少數(shù)據(jù),文件系統(tǒng)都需要一個(gè)塊設(shè)備器中讀取 4KB 數(shù)據(jù)。其時(shí)間的差異主要來源于從內(nèi)核空間往用戶空間所拷不同。在 EXT4 和 XFS 中,,有 BMAP 的文件系統(tǒng)所消耗的周期大約為沒有半。BMAP 將文件系統(tǒng)性能提高了一倍。
圖 5 3 MMAP 性能 BMAP 對文件系統(tǒng) MMAP 性能的影響。MMAP立,文件數(shù)據(jù)讀寫,存儲器同步。映射建立只是建。文件數(shù)據(jù)讀寫時(shí)會觸發(fā)缺頁中斷從存儲器讀取文寫到存器。其中后兩個(gè)步驟涉及到了塊設(shè)備的讀msync 即為存儲器同步;趽碛 BMAP 的 NVMBCPU 周期都大概是沒有 BMAP 文件系統(tǒng)的一半。
【學(xué)位授予單位】:上海交通大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2018
【分類號】:TP333
【參考文獻(xiàn)】
相關(guān)期刊論文 前1條
1 周狄波;王迪峰;;基于Linux的內(nèi)存式WebGIS設(shè)計(jì)與實(shí)現(xiàn)[J];計(jì)算機(jī)應(yīng)用;2009年07期
本文編號:2590650
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2590650.html
最近更新
教材專著