簡易檢索 / 詳目顯示

研究生: 林冠銘
Lin, Guan-Ming
論文名稱: 區塊層級適應性的資料分拆放置方法於OpenSSD平台之實作
Implementation of a Block-Level Adaptive Data Striping Method on the OpenSSD Platform
指導教授: 張大緯
Chang, Da-Wei
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Department of Computer Science and Information Engineering
論文出版年: 2018
畢業學年度: 106
語文別: 英文
論文頁數: 25
中文關鍵詞: 固態硬碟快閃記憶體轉譯層Jasmine OpenSSD
外文關鍵詞: Solid-state drive, NAND flash memory, FTL, Jasmine OpneSSD
相關次數: 點閱:134下載:6
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 固態硬碟由於有著高效能的特性,現今已經成為新世代的儲存裝置。由於他們內部複雜的機制,已經有大量的關於最佳化固態硬碟內部演算法研究被發表出來。然而大部分關於固態硬碟內部機制的研究,例如最佳化轉譯層的機制,都是在模擬器上開發出來的。在這些機制不是開發於真實裝置的情況下,我們難以判斷這些機制是否真的可運作在真實裝置上且帶來效益。
    在本篇文章,我們描述實作固態硬碟韌體的過程,這個韌體改變的是轉譯層的部分。我們將區塊層級適應性的資料分拆放置方法實作在Jasmine OpenSSD這個平台上。在實作這個機制的過程中,我們遭遇到一些由於硬體限制而導致的問題。
    我們描述這些問題以及相對應的解決方法,而且說明我們實作在這個平台上的韌體的總體架構。最後,我們驗證了由於區塊層級適應性的資料分拆放置方法有很高的輸出入平行度以及在背景分散資料的機制,所以區塊層級適應性的資料分拆放置方法的效能在讀取密集以及寫入密集的工作量中都優於以區塊為單位分散的資料分拆放置方法。

    Solid-state drives have become the new generation storage recently due to their high performance. Due to their complex internal mechanisms, a great deal of research on optimization of internal SSD algorithms have been proposed. However, most of these researches on the internal mechanisms of an SSD, such as optimization of flash-translation layers, are developed with simulators. Without implementing on the real device, it is difficult to judge whether these proposed mechanisms are practicable and can bring the true benefits on real devices.
    In this paper, we describe our implementation process to build a firmware of SSD that changes the flash translation layer. With the OpenSSD Jasmine platform, we implement a block-level adaptive data placement policy called BLAS. While implementing the mechanism on the board, we encounter several problems caused by the hardware limitations.
    We describe the problems, corresponding solutions, and the overall architecture of the firmware that we build on the board. Finally, we validate that BLAS has better performance in both read-intensive and write-intensive workloads than those of block striping policy due to its high degree of parallel writes and the background scattering scheme.

    摘要 I ABSTRACT II 誌謝 III CONTENT IV List of Figures V List of Tables VI Chapter 1 INTRODUCTION 1 Chapter 2 BACKGROUND AND RELATED WORKS 3 2.1 SSD Architecture 3 2.2 BLAS scheme 4 2.3 Jasmine OpenSSD 5 Chapter 3 IMPLEMENTATION 9 3.1 DRAM Layout 9 3.2 Problems 11 3.2.1 Hardware buffer manager conflicts with LRU manner 11 3.2.2 Extra flash write operations 12 3.3 Solutions 13 3.3.1 Allocate LRU buffer space in DRAM space 14 3.3.2 Invoke Page Allocator 15 3.4 Summary 17 Chapter 4 PERFORMANCE EVALUATION 18 4.1 Experimental Environment 18 4.2 Performance Evaluation 20 4.2.1 Overall Performance 20 4.2.2 Parameter of identifying read-intensive logical block 21 Chapter 5 CONCLUSION 23 REFERENCES 24

    [1] G.Wu, B.Eckart, and X.He, “BPAC: An adaptive write buffer management scheme for flash-based solid state drives,” 2010 IEEE 26th Symp. Mass Storage Syst. Technol. MSST2010, 2010.
    [2] H.Jo, J. U.Kang, S. Y.Park, J. S.Kim, and J.Lee, “FAB: Flash-aware buffer management policy for portable media players,” IEEE Trans. Consumer Electronics, vol. 52, no. 2, pp. 485–493, 2006.
    [3] H.Kim andS.Ahn, “BPLRU: a buffer management scheme for improving random writes in flash storage,” Proc. 6th USENIX Conf. File Storage Technol., pp. 1–14, 2008.
    [4] A.Gupta, Y.Kim, andB.Urgaonkar, “DFTL: A Flash Translation Layer Employing Demand-based Selective Caching of Page-level Address Mappings,” ACM SIGPLAN Not., vol. 44, no. 3, p. 229, 2009.
    [5] S.-W.Lee, D.-J.Park, T.-S.Chung, D.-H.Lee, S.Park, andH.-J.Song, “A log buffer-based flash translation layer using fully-associative sector translation,” ACM Trans. Embed. Comput. Syst., vol. 6, no. 3, p. 18–es, 2007.
    [6] G.Wu andX.He, “∆ FTL : Improving SSD Lifetime via Exploiting Content Locality,” EuroSys, pp. 253–265, 2012.
    [7] S.Lee, D.Shin, Y.-J.Kim, andJ.Kim, “LAST: locality-aware sector translation for NAND flash memory-based storage systems,” ACM SIGOPS Oper. Syst. Rev., pp. 36–42, 2008.
    [8] J.-U.Kang, H.Jo, J.-S.Kim, andJ.Lee, “A superblock-based flash translation layer for NAND flash memory,” Proc. 6th ACM IEEE Int. Conf. Embed. Softw. EMSOFT 06, p. 161, 2006.
    [9] D.-W. Chang, H.-H. Chen, D.-J. Yang, and H.-P. Chang, "BLAS: Block-level adaptive striping for solid-state drives," ACM Transactions on Design Automation of Electronic Systems (TODAES), vol. 19, p. 21, 2014.
    [10] Indilinx Jasmine OpenSSD Platform, http://www.openssd-project.org/wiki/Jasmine_OpenSSD_Platform
    [11] Samsung Electronics Company. 2010. K9LCG08U1A 32Gb A-die NAND Flash Datasheet.
    [12] M. L.Chiang, C. H. P.Lee, andR. C.Chang, “Using data clustering to improve cleaning performance for flash memory,” Softw. - Pract. Exp., vol. 29, no. 3, pp. 267–290, 1999.
    [13] S. P.Lim, S. W.Lee, andB.Moon, “FASTer FTL for enterprise-class flash memory SSDs,” Proc. - 2010 Int. Work. Storage Netw. Archit. Parallel I/Os, SNAPI 2010, pp. 3–12, 2010.
    [14] Samsung Electronics, K9LCG08U1M Information, https://www.elnec.com/en/device/Samsung/K9LCG08U1M+%5BLGA52%5D/.
    [15] Filebench benchmark, https://github.com/filebench/filebench/wiki.

    下載圖示
    2023-01-15公開
    QR CODE