| 研究生: |
林冠銘 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.
[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.