簡易檢索 / 詳目顯示

研究生: 葉柏辰
Po-Chen Yeh
論文名稱: 針對一個固態硬碟的全域及區域動態隨機記憶體的配置策略
A Global and Local DRAM Allocation Strategy for Solid-State Drives (SSDs)
指導教授: 吳晋賢
Chin-Hsien Wu
口試委員: 吳晋賢
Chin-Hsien Wu
陳維美
Wei-Mei Chen
林淵翔
Yuan-Hsiang Lin
林昌鴻
Chang Hong Lin
學位類別: 碩士
Master
系所名稱: 電資學院 - 電子工程系
Department of Electronic and Computer Engineering
論文出版年: 2021
畢業學年度: 109
語文別: 中文
論文頁數: 70
中文關鍵詞: 快閃記憶體動態DRAM分配快閃記憶體轉換層
外文關鍵詞: NAND Flash Memory, Dynamic DRAM Allocation, Flash Translation Layer
相關次數: 點閱:272下載:23
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 快閃記憶體(NAND Flash)擁有體積小、功耗低、抗震、存取速度快等優勢,但快閃記憶體仍會面臨資料的「異地更新」、「垃圾收集」和「不平衡的執行時間」等硬體上的限制。一般而言,在有限的DRAM空間中快閃記憶體轉換層(FTL)可以維護映射快取區存放經常存取的位址映射來處理「異地更新」和維護讀寫緩衝區存放經常存取的資料來處理「垃圾收集」和「不平衡的執行時間」,在論文中我們將提出針對一個固態硬碟的全域及區域動態隨機記憶體的配置策略,其中全域動態隨機記憶體配置的設計理念是透過最小快閃記憶體寫入量的期望值構建出期望值模型,計算出適當的DRAM空間分配給寫入緩衝區和寫入映射快取區。為了進一步減少快閃記憶體的讀取量,區域動態隨機記憶體配置的設計理念採用成本效益的策略將適當的 DRAM 空間分別從寫入緩衝區和寫入映射快取區重新分配到讀取緩衝區和讀取映射快取區,根據實驗結果,我們可以證明所提出的全域及區域動態隨機記憶體的配置可以比其他方法減少更多快閃記憶體中的讀/寫量來改善反應時間。


    Although NAND flash memory has the advantages of small size, low-power consumption, shock resistance, and fast access speed, NAND flash memory still faces the problems of "out-of-place updates", "garbage collection" and "unbalanced execution time" due to its hardware limitations. Usually, a flash translation layer (FTL) can maintain the mapping cache (in limited DRAM space) to store the frequently accessed address mapping for "out-of-place updates" and maintain the read/write buffer (in limited DRAM space) to store the frequently accessed data for "garbage collection" and "unbalanced execution time". In the thesis, we will propose a global and local DRAM allocation strategy for solid-state drives (SSDs). The design idea behind the global DRAM allocation method is to calculate the suitable DRAM allocation for the write buffer and the write mapping cache by building an expected value model with a minimum expected value of writes for NAND flash memory. To further reduce reads in NAND flash memory, the design idea behind the local DRAM allocation method is to adopt a cost-benefit policy to reallocate the proper DRAM space from the write buffer and the write mapping cache to the read buffer and the read mapping cache, respectively. According to the experimental results, we can demonstrate that the proposed global and local DRAM allocation can reduce more reads/writes in NAND flash memory than other methods to improve the response time.

    Content 中文摘要 Abstract Content 1. Introduction 2. Background Knowledge 2.1 Flash Translation Layer (FTL) 2.2 Write Buffer Mechanism 2.3 Regression Analysis 3. Motivation and Related Work 3.1 Motivation 3.2 Related Work 4. A Global and Local DRAM Allocation Strategy for Solid-State Drives (SSDs) 4.1 System Architecture 4.2 A Global DRAM Allocation Method for Write Buffer and Write Mapping Cache 4.2.1 Global Write Buffer Predictor 4.2.2 Global Write Mapping Cache Predictor 4.2.3 Global DRAM Allocator 4.3 A Local DRAM Allocation Method for Read Buffer and Read Mapping Cache 4.3.1 A Local Read Buffer Allocator (LRB allocator) 4.3.2 A Local Read Mapping Cache Allocator (LRMC allocator) 4.4 Different Designs for the Global and Local DRAM Allocation Methods 5. Experimental Setup and Performance Evaluation 5.1 Experimental Setup 5.2 Experimental Results 5.2.1 Financial1 5.2.2 Financial2 5.2.3 Systor17-LUN0 5.2.4 Systor17-LUN1 5.2.5 Microsoft Research Cambridge (MSR) 5.2.6 Mixed Traces 6. Conclusion References

    [1] “Snia iotta trace repository,” 2020.
    [2] U. Anwar, J.-Y. Paik, R. Jin, and T.-S. Chung, “Log-buffer aware cache replacement policy for flash storage devices,” IEEE Transactions on Consumer Electronics, vol. 63, no. 1, pp. 77–84, 2017.
    [3] D. M. Bates and D. G. Watts, Nonlinear regression analysis and its applications. Wiley New York, 1988, vol. 2.
    [4] Y. Cai, S. Ghose, E. F. Haratsch, Y. Luo, and O. Mutlu, “Error characterization, mitigation, and recovery in flash-memory-based solid-state drives,” Proc. of the IEEE, vol. 105, no. 9, pp. 1666–1704, 2017.
    [5] L.-P. Chang and T.-W. Kuo, “An adaptive striping architecture for flash memory storage systems of embedded systems,” in Proceedings. Eighth IEEE Real-Time and Embedded Technology and Applications Symposium. IEEE, 2002, pp. 187–196.
    [6] H. Chen, C. Li, Y. Pan, M. Lyu, Y. Li, and Y. Xu, “Hcftl: A locality-aware page-level flash translation layer,” in 2019 Design, Automation and Test in Europe Conference and Exhibition (DATE). IEEE, 2019, pp. 590–593.
    [7] J.-H. Choi, K. M. Kim, and J. W. Kwak, “Wpa: Write pattern aware hybrid disk buffer management for improving lifespan of nand flash memory,” IEEE Transactions on Consumer Electronics, vol. 66, no. 2, pp. 193–202, 2020.
    [8] W. Choi, B. Urgaonkar, M. Kandemir, M. Jung, and D. Evans, “Fair write attribution and allocation for consolidated flash cache,” in Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), March 2020, pp. 1063–1076.
    [9] S. P. Council, “Spc trace file format specification,” 2002.
    [10] A. Fukami, S. Ghose, Y. Luo, Y. Cai, and O. Mutlu, “Improving the reliability of chip-off forensic analysis of nand flash memory devices,” Digital Investigation, vol. 20, pp. S1–S11, 2017.
    [11] A. Gupta, Y. Kim, and B. Urgaonkar, “Dftl: a flash translation layer employing demand-based selective caching of page-level address mappings,” Acm Sigplan Notices, vol. 44, no. 3, pp. 229–240, 2009.
    [12] Y. Hu, H. Jiang, D. Feng, H. Luo, and L. Tian, “Pass: A proactive and adaptive ssd buffer scheme for data-intensive workloads,” in IEEE International Conference on Networking, Architecture and Storage (NAS), Aug. 2015, pp. 54–63.
    [13] W. Kang, D. Shin, and S. Yoo, “Reinforcement learning-assisted garbage collection to mitigate long-tail latency in ssd,” ACM Transactions on Embedded Computing Systems (TECS), vol. 16, no. 5s, pp. 1–20, 2017.
    [14] W. Kang and S. Yoo, “Dynamic management of key states for reinforcement learning-assisted garbage collection to reduce long tail latency in ssd,” in Proceedings of the 55th Annual Design Automation Conference, June 2018, pp. 1–6.
    [15] ——, “Q-value prediction for reinforcement learning assisted garbage collection to reduce long tail latency in ssd,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (Early Access), vol. 0, no. 0, pp. 1–1, 2019. [Online]. Available: https://doi.org/10.1109/TCAD.2019.2962781
    [16] C. Lee, T. Kumano, T. Matsuki, H. Endo, N. Fukumoto, and M. Sugawara, “Understanding storage traffic characteristics on enterprise virtual desktop infrastructure,” in Proceedings of the 10th ACM International Systems and Storage Conference, 2017, pp. 1–11.
    [17] B. Li, C. Deng, J. Yang, D. Lilja, B. Yuan, and D. Du, “Haml-ssd: A hardware accelerated hotness-aware machine learning based ssd management,” in 38th IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2019. Institute of Electrical and Electronics Engineers Inc., 2019, p. 8942140.
    [18] Y. Luo, S. Ghose, Y. Cai, E. F. Haratsch, and O. Mutlu, “Heatwatch: Improving 3d nand flash memory device reliability by exploiting self-recovery and temperature awareness,” in 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA). IEEE, 2018, pp. 504–517.
    [19] Marvell, “Marvell demonstrates artificial intelligence ssd controller architecture solution,” Aug. 2018.
    [20] D. Narayanan, A. Donnelly, and A. Rowstron, “Write off-loading: Practical power management for enterprise storage,” ACM Transactions on Storage (TOS), vol. 4, no. 3, pp. 1–23, 2008.
    [21] S. Nie, Y. Zhang, W. Wu, and J. Yang, “Layer rber variation aware read performance optimization for 3d flash memories,” in ACM/IEEE Design Automation Conference (DAC), July 2020, pp. 1–6.
    [22] E. J. O’neil, P. E. O’neil, and G. Weikum, “The lru-k page replacement algorithm for database disk buffering,” Acm Sigmod Record, vol. 22, no. 2, pp. 297–306, 1993.
    [23] J. K. Park and J. Kim, “A method for reducing garbage collection overhead of ssd using machine learning algorithms,” in International Conference on Information and Communication Technology Convergence (ICTC), Oct. 2017, pp. 775–777.
    [24] L. S. Shapley, “A value for n-person games,” 1952.
    [25] D. Shasha and T. Johnson, “2q: A low overhead high performance buffer management replacement algoritm,” in Proceedings of the Twentieth International Conference on Very Large Databases, Santiago, Chile, 1994, pp. 439–450.
    [26] H. Shim, B.-K. Seo, J.-S. Kim, and S. Maeng, “An adaptive partitioning scheme for dram-based cache in solid state drives,” in 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST). IEEE, 2010, pp. 1–12.
    [27] C. Siau, K.-H. Kim, S. Lee, K. Isobe, N. Shibata, K. Verma, T. Ariki, J. Li, J. Yuh, A. Amarnath, Q. Nguyen, O. Kwon, S. Jeong, H. Li, H.-L. Hsu, T. yuan Tseng, S. Choi, S. Darne, P. Anantula, A. Yap, H. Chibvongodze, H. Miwa, M. Yamashita, M. Watanabe, K. Hayashi, Y. Kato, T. Miwa, J. Y. Kang, M. Okumura, N. Ookuma, M. Balaga, V. Ramachandra, A. Matsuda, S. Kulkani, R. Rachineni, P. K. Manjunath, M. Takehara, A. Pai, S. Rajendra, T. Hisada, R. Fukuda, N. Tokiwa, K. Kawaguchi, M. Yamaoka, H. Komai, T. Minamoto, M. Unno, S. Ozawa, H. Nakamura, T. Hishida, Y. Kajitani, and L. Lin, “13.5 a 512gb 3-bit/cell 3d flash memory on 128-wordline-layer with 132mb/s write performance featuring circuit-under-array technology,” in IEEE International Solid- State Circuits Conference - (ISSCC), Feb. 2019, pp. 218–220.
    [28] S. Tripathy, M. Satpathy, D. Sahoo, and M. Mutyam, “Fuzzy fairness controller for nvme ssds,” in Proceedings of the 34th ACM International Conference on Supercomputing, 2020, pp. 1–12.
    [29] W.-C. Tsai, S.-M. Wu, and L.-P. Chang, “Learning-assisted write latency optimization for mobile storage,” in IEEE 25th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), 2019.
    [30] P. Virtanen, R. Gommers, T. E. Oliphant, M. Haberland, T. Reddy, D. Cournapeau, E. Burovski, P. Peterson, W. Weckesser, J. Bright, S. J. van der Walt, M. Brett, J. Wilson, K. Jarrod Millman, N. Mayorov, A. R. Nelson, E. Jones, R. Kern, E. Larson, C. Carey, I. Polat, and . Feng, Yu, “Scipy 1.0: Fundamental algorithms for scientific computing in python,” Nature Methods, vol. 17, pp. 261–272, 2020.
    [31] H. Wang, X. Yi, P. Huang, B. Cheng, and K. Zhou, “Efficient ssd caching by avoiding unnecessary writes using machine learning,” in Proceedings of the 47th International Conference on Parallel Processing, 2018, pp. 1–10.
    [32] C. Wu, C. Ji, Q. Li, C. Gao, R. Pan, C. Fu, L. Shi, and C. J. Xue, “Maximizing i/o throughput and minimizing performance variation via reinforcement learning based i/o merging for ssds,” IEEE Transactions on Computers, vol. 69, no. 1, pp. 72–86, 2019.
    [33] C. Wu, C. Ji, and C. J. Xue, “Reinforcement learning based background segment cleaning for log-structured file system on mobile devices,” in IEEE International Conference on Embedded Software and Systems (ICESS), 2019.
    [34] R. Yamashita, S. Magia, T. Higuchi, K. Yoneya, T. Yamamura, H. Mizukoshi, S. Zaitsu, M. Yamashita, S. Toyama, N. Kamae, J. Lee, S. Chen, J. Tao, W. Mak, X. Zhang, Y. Yu, Y. Utsunomiya, Y. Kato, M. Sakai, M. Matsumoto, H. Chibvongodze, N. Ookuma, H. Yabe, S. Taigor, R. Samineni, T. Kodama, Y. Kamata, Y. Namai, J. Huynh, S.-E. Wang, Y. He, T. Pham, V. Saraf, A. Petkar, M. Watanabe, K. Hayashi, P. Swarnkar, H. Miwa, A. Pradhan, S. Dey, D. Dwibedy, T. Xavier, M. Balaga, S. Agarwal, S. Kulkarni, Z. Papasaheb, S. Deora, P. Hong, M. Wei, G. Balakrishnan, T. Ariki, K. Verma, C. Siau, Y. Dong, C.-H. Lu, T. Miwa, and F. Moogat, “11.1 a 512gb 3b/cell flash memory on 64-word-line-layer bics technology,” in IEEE International Solid-State Circuits Conference (ISSCC), Feb. 2017, pp. 196–197.
    [35] P. Yang, N. Xue, Y. Zhang, Y. Zhou, L. Sun, W. Chen, Z. Chen, W. Xia, J. Li, and K. Kwon, “Reducing garbage collection overhead in ssd based on workload prediction,” in 11th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage 19), 2019.
    [36] Y. Yao, M. Yan, X. Kong, X. Xu, W. Feng, and X. Xu, “An adaptive read-write partitioning flash translation layer algorithm,” IEEE Access, vol. 7, pp. 179 063–179 073, 2019.
    [37] Y. Yuan, Y. Shen, W. Li, D. Yu, L. Yan, and Y. Wang, “Pr-lru: A novel buffer replacement algorithm based on the probability of reference for flash memory,” IEEE Access, vol. 5, pp. 12 626–12 634, 2017.
    [38] 林勇翔。「動態調整寫入緩衝及映射快取之記憶體分配以降低快閃記憶體的寫入操作」。碩士論文。國立臺灣科技大學電子工程系,2020。https://hdl.handle.net/11296/37c4r7。

    QR CODE