افزایش طول عمر حافظه نهان ورودی/خروجی با استفاده از معماری ترکیبی چندسطحی

نویسندگان

دانشکده ی مهندسی کامپیوتر، دانشگاه صنعتی شریف، تهران، ایران

چکیده

استفاده از دیسک حالت جامد به‌عنوان حافظه نهان در زیرسامانه‌های ذخیره‌سازی داده یکی از رویکردهای رایج جهت افزایش کارایی این سامانه‌ها است. دوام محدود دیسک‌های حالت جامد، یکی از اصلی‌ترین چالش‌های موجود در طراحی حافظه‌های نهان ورودی/خروجی کارا به شمار می‌آید. در این مقاله، ابتدا تأثیر معماری‌های یکسطحی و چندسطحی بررسی و نشان داده می‌شود استفاده از دیسک‌های حالت جامد به‌عنوان حافظه نهان ورودی/خروجی یک‌سطحی، تعداد دفعات نوشتن بر روی این ادوات را نسبت به درخواست‌های نوشتن ارسالی از لایه بالاتر به‌صورت میانگین 3.7 برابر می‌کند که باعث کاهش شدید طول عمر دیسک حالت جامد می‌شود. مبتنی بر این مشاهده، یک معماری ترکیبی شامل DRAM با دوام بالا به‌عنوان سطح اول و دیسک حالت جامد با قابلیت ذخیره‌سازی داده به‌صورت غیر فرار به‌عنوان سطح دوم پیشنهاد می‌شود. در معماری پیشنهادی، فقدان‌های خواندن در سطح اول حافظه نهان درج می‌شوند و به‌منظور بهبود کارایی حافظه نهان چندسطحی در مقایسه با معماری تک‌سطحی، یک فیلتر تنزل پیشنهاد می‌شود که وظیفه مهاجرت صفحات پرطرفدار را از سطح اول به سطح دوم حافظه نهان بر عهده خواهد داشت. ارزیابی‌های انجام شده نشان می‌دهد که معماری پیشنهادی با سربار قابل‌چشم‌پوشی کارایی (به‌طور میانگین 0.3%) می‌تواند تا 93% تعداد دفعات نوشتن بر روی دیسک حالت جامد را کاهش دهد.

کلیدواژه‌ها

  • M. Khoso, “How Much Data Is Produced Every Day?,” [Online].Available:http://www.northeastern.edu/levelblog/2016/05/13/how-much-data-produced-every-day/. Accessed:1/01/2018.
  • [2] F. Chen, D. A. Koufaty, and X. Zhang, “Understanding Intrinsic Characteristics and System Implications of Flash Memory Based Solid State Drives,” 32th International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS), New York, NY, USA, pp. 181-192, Aug. 2009.
  • [3] Y. Ni, J. Jiang, D. Jiang, X. Ma, J. Xiong, and Y. Wang, “S-RAC: SSD Friendly Caching for Data Center Workloads,” 9th ACM International System Storage Conference (SYSTOR), pp. 8:1-8:12, Jun. 2016.
  • [4] Y. Liang, Y. Chai, N. Bao, H. Chen, and Y Liu, “Elastic Queue: A Universal SSD Lifetime Extension Plug-in for Cache Replacement Algorithms,” 9th ACM International Systems & Storage Conference (SYSTOR), pp. 5:1-5:11, Jun. 2016.
  • [5] J. Kim, S. Seo, D. Jung, J. S. Kim, and J. Huh, “Parameter-Aware I/OManagement for Solid State Disks (SSDs),” IEEE Transactions on Computers (TC), vol. 61, no. 5, pp. 636 –649, May 2012.
  • [6] R. Micheloni, A. Marelli, and K. Eshghi, “Inside Solid State Drives (SSDs),” Springer Series in Advanced Microelectronics, 2018.
  • [7] R. Salkhordeh, S. Ebrahimi, and H. Asadi, “ReCA: an Efficient Reconfigurable Cache Architecture for Storage Systems with Online Workload Characterization,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 29, no.7, pp.1605-1620, Jul. 2018.
  • [8] S. Huang, Q. Wei, J. Chen, C. Chen, and D. Feng, “Improving Flash-Based Disk Cache with Lazy Adaptive Replacement,” 29th IEEE Symposium on Mass Storage Systems and Technologies (MSST), Long Beach, CA, USA, pp. 1-10, May 2013.
  • [9] R. Santana, S. Lyons, R. Koller, R. Rangaswami, and J. Liu, “To ARC or not to ARC,” 7th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage), Santa Clara, CA, USA, pp. 14–14, Jul. 2015.
  • [10] Q. Xia and W. Xiao, “High-Performance and Endurable Cache Management for Flash-Based Read Caching,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 27, no. 12, pp. 3518-3531, Dec. 2016.
  • [11] D. Jiang, Y. Che, J. Xiong, and X. Ma, “uCache: A Utility-Aware Multilevel SSD Cache Management Policy,” 10th IEEE International Conference on High Performance Computing and Communications & IEEE International Conference on Embedded and Ubiquitous Computing (HPCC_EUC), Zhangjiajie, China, pp. 391-398, Nov. 2013.
  • [12] Z. Chen, N. Xiao, Y. Lu, and F. Liu, “Me-CLOCK:A Memory-Efficient Framework to Implement Replacement Policies for Large Caches,” IEEE Transactions on Computers (TC), vol. 65, no. 8, pp. 2665-2671, Aug. 2016.
  • [13] Y. Chai, Z. Du, X. Qin, and D. A. Bader, “WEC: Improving Durability of SSD Cache Drives by Caching Write- EfficientData,” IEEE Transactions on Computers (TC), vol. 64, no. 11, pp. 3304-3316, Nov. 2015.
  • [14] S. He, Y. Wang, and X. H. Sun, “Improving Performance of Parallel I/O Systems through Selective and Layout-Aware SSD Cache,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 27, no. 10, pp. 2940- 2952, Oct. 2016.
  • [15] J. Wan, W. Wu, L. Zhan, Q. Yang, X. Qu, and C. Xie, “DEFT-Cache: A Cost-Effective and Highly Reliable SSD Cache for RAID Storage,” IEEE International Parallel and Distributed Processing Symposium (IPDPS), Orlando, FL, USA, pp. 102-111, 2017.
  • [16] 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, Nov. 2008.
  • [17] Storage Networking Industry Association IOTTA Repository, “Microsoft Enterprise Traces,” [Online]. Available: http://iotta.snia.org/traces/130. Accessed: 01/01/2018.
  • [18] Storage Networking Industry Association IOTTA Repository, “Microsoft Production Server Traces,” [Online]. Available: http://iotta.snia.org/traces/158. Accessed: 01/01/2018.
  • [19] J. Katcher, “Postmark: A New File System Bench-Mark,” Network Appliance, Technical Report. 3022, Oct. 1997.
  • [20] A. Wilson, “The New and Improved FileBench,” 6th USENIX Conference on File and Storage Technologies (FAST), San Jose, CA, USA, Feb. 2008.
  • [21] Intel, “Game-changing Fast Memory Also a Big Deal for Big Data,” [Online]. Available: https://newsroom.intel.com/e di torials/
  • 3d-xpoint-memory-storage.Accessed: 23/06/2018.
  • [22] F. Chen, D. A. Koufaty, and X. Zhang, “Hystor: Making the Best Use of Solid State Drives in High Performance Storage Systems,” 25th International Conference on Supercomputing (ICS), Tucson, AR., USA, pp. 22–32, Jun. 2011.
  • [23] S. K. Yoon, Y. S. Youn, S. J. Nam, M. H. Son, and S. D. Kim, “Optimized Memory-Disk Integrated System with DRAM and Nonvolatile Memory,” IEEE Transactions on Multi-Scale Computing Systems (TMSCS), vol. 2, no. 2, pp. 83- 93, Apr. 2016.
  • [24] Samsung, “SAMSUNG Memory/Storage MSRP Price List-EFFECTIVE April 2017,” Technical Report. 2017.
  • [25] PCPARTPICKER, “GeIL - EVO Veloce Series 8GB (2x4GB) DDR3-1600 Memory,”[Online]. Available:https://pcpartpicker.com/ product/9nzv6h/geil-memorygev38gb1600c9dc? history_days= 730. Accessed: 23/06/2018.
  • [26] W. Fischer, “Linux Storage Stack Diagram,” [Online]. Available: https://www.thomaskrenn.com/en/wiki/Linux_Storage_Stack_ Diagram. Accessed: 08/04/2019.
  • [27] E. Cheshmikhani, H. Farbeh, and H. Asadi, “Enhancing Reliability of STT-MRAM Caches by Eliminating Read Disturbance Accumulation,” 54th IEEE/ACM Design, Automation and Test in Europe Conference (DATE), Florence, Italy, Mar. 2019.
  • [28] E. Cheshmikhani, H. Farbeh, and H. Asadi, “ROBIN: Incremental Oblique Interleaved ECC for Reliability Improvement in STT-MRAM Caches,” 24th IEEE Asia and South Pacific Design Automation Conference (ASP-DAC), Tokyo, Japan, Jan. 2019.
  • [29] R. Salkhordeh and H. Asadi, “An Operating System level data migration scheme in hybrid DRAM-NVM memory architecture,” 51st IEEE/ACM Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, pp. 936-941, Mar. 2016.
  • [30] M. Bazzaz, A. Hoseinghorban, F. Poursafaei, and A. Ejlali, “High-Performance Predictable NVM-based Instruction Memory for Real-Time Embedded Systems,” IEEE Transactions on Emerging Topics in Computing (TETC), Early Access, pp. 1-1, Jul. 2018.
  • [31] Windows Central, “Dealing with RPM: Why laptops are still using slow hard drives,” [Online]. Available: https://www.windowscentral.com/dealing-rpm-why-laptops-are-still -using-slow-hard-drives. Accessed: 09/04/2019.
  • [32] Samsung, “Samsung SM863a SSD for Data Centers | Enterprise SSD | Samsung Semiconductor Global Website,” [Online]. Available: https://www.samsung.com/semiconductor/minisite/ssd/enterp rise/sm863a. Accessed: 22/06/2018.
  • [33] M. Rouse, “PCIe SSD (PCIe solid-state drive),” [Online]. Available: https://searchstorage.techtarget.com/definition/PCIe-SSD-PCIe-solid-state-drive. Accessed: 09/04/2019.
  • [34] S. He, Y. Wang, Z. Li, X. H. Sun, and C. Xu, “Cost-Aware Region-Level Data Placement in Multi-Tiered Parallel I/O Systems,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 28, no. 7, pp. 1853-1865, Jul. 2017.
  • [35] R. Salkhordeh, H. Asadi, and S. Ebrahimi, “Operating System Level Data Tiering Using Online Workload Characterization,” The Journal of Supercomputing, vol. 71, no. 4, pp. 1534-1562, Apr. 2015.
  • [36] D. Lee, S. Yoon, J. Kim, C. C. Weems, and S. D. Kim, “A New Memory-Disk Integrated System with HW Optimizer,” ACM Transactions on Architecture and Code Optimization (TACO), vol. 12, no. 2, pp. 11:1-11:23, Apr. 2015.
  • [37] S. K. Yoon, M. Y. Bian, and S. D. Kim, “An Integrated Memory-Disk System with Buffering Adapter and Non-Volatile Memory,” Springer Design Automation for Embedded System, vol. 17, no. 3, pp. 609-626, Sep. 2013.
  • [38] J. Cui, Y. Zhang, J. Huang, W. Wu, and J. Yang, “ShadowGC: Cooperative Garbage Collection with Multi-Level Buffer for Performance Improvement in NAND Flash-Based SSDs,” 53rd IEEE/ACM Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, pp. 1247-1252, Mar. 2018.
  • [39] M. Tarihi, H. Asadi, A. Haghdoost, M. Arjomand, and H. Sarbazi-Azad, “A Hybrid Non-Volatile Cache Design for Solid-State Drives Using Comprehensive I/O Characterization,” IEEE Transactions on Computers (TC), vol. 65, no. 6, pp. 1678-1691, Jun. 2016.
  • [40] E. Lee, J. Kim, H. Bahn, S. Lee, and S. H. Noh, “Reducing Write Amplification of Flash Storage through Cooperative Data Management with NVM,” ACM Transactions on Storage (TOS), vol. 13, no. 2, pp. 12:1--12:13, Jun. 2017.
  • [41] D. H. Kang, S. J. Han, Y. C. Kim, and Y. I. Eom, “CLOCK-DNV: A Write Buffer Algorithm for Flash Storage Devices of Consumer Electronics,” IEEE Transactions on Consumer Electronics (TCE), vol. 63, no. 1, pp. 85-91, Feb. 2017.
  • [42] L. Shi, J. Li, C. J. Xue, and X. Zhou, “Hybrid Nonvolatile Disk Cache for Energy-efficient and High-performance Systems,” ACM Transactions on Design Automation of Electronic Systems (TODAES), vol. 18, no. 1, pp. 8:1-8:23, Jan. 2013.
  • [43] Z. Shen, F. Chen, Y. Jia, and Z. Shao, “DIDACache: A Deep Integration of Device and Application for Flash Based Key-Value Caching,” 15th USENIX Conference on File and Storage Technologies (FAST), Santa Clara, CA, USA, pp. 391-405, Feb. 2017.
  • [44] S. Xu, S. Lee, S. W. Jun, M. Liu, and J. Hicks, “Bluecache: A Scalable Distributed Flash-Based Key-Value Store,” 42nd international conference on very large data bases (VLDB), New Delhi, India, pp. 301-312, Mar. 2016.
  • [45] Z. Shen, F. Chen, Y. Jia, and Z. Shao, “Optimizing Flash-based Key-value Cache Systems,” 8th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage), Denver, CO, USA, pp. 1-5, Jun. 2016.
  • [46] L. Tang, Q. Huang, W. Lloyd, S. Kumar, and K. Li, “RIPQ: Advanced Photo Caching on Flash for Facebook,” 13th USENIX Conference on File and Storage Technologies (FAST), Santa Clara, CA, USA, pp. 373-386, Feb. 2015.
  • [47] J. Niu, J. Xu, and L. Xie, “Hybrid Storage Systems: A Survey of Architectures and Algorithms,” IEEE Access, vol. 6, pp. 13385-13406, Feb. 2018.
  • [48] Seagate, “Mobile SATA Momentus,” [Online.] Available: https://www.seagate.com/files/staticfiles/support/docs/samsung-ds/ 100698122c.pdf. Accessed: 30/06/2018.
  • [49] R. Salkhordeh, M. Hadizadeh, and H. Asadi, “An Efficient Hybrid I/O Caching Architecture Using Heterogeneous SSDs,” IEEE Transactions on Parallel and Distributed Systems (TPDS), Early Access, pp. 1-1, Nov. 2018.

 

دوره 17، شماره 1
بهار و تابستان
اردیبهشت 1398