Abstract
This article proposes a pattern-based prefetching scheme with the support of adaptive cache management, at the flash translation layer of solid-state drives (SSDs). It works inside of SSDs and has features of OS dependence and uses transparency. Specifically, it first mines frequent block access patterns that reflect the correlation among the occurred I/O requests. Then, it compares the requests in the current time window with the identified patterns to direct prefetching data into the cache of SSDs. More importantly, to maximize the cache use efficiency, we build a mathematical model to adaptively determine the cache partition on the basis of I/O workload characteristics, for separately buffering the prefetched data and the written data. Experimental results show that our proposal can yield improvements on average read latency by
- [1] . 2012. The bleak future of NAND flash memory. In Proceedings of USENIX Conference on File and Storage Technologies (FAST’12). Google Scholar
Digital Library
- [2] . 2017. Solid-State Drive (SSD): A nonvolatile storage system. In Proceedings of the IEEE 105, 4 (2017), 583–588.
DOI: https://doi.org/10.1109/JPROC.2017.2678018Google ScholarCross Ref
- [3] . 2017. Design of hybrid SSDs with storage class memory and NAND flash memory. In Proceedings of the IEEE 105, 9 (2017), 1812–1821.
DOI: https://doi.org/10.1109/JPROC.2017.2716958Google ScholarCross Ref
- [4] . 2008. A reconfigurable FTL (flash translation layer) architecture for NAND flash-based applications. In ACM Transactions on Embedded Computing Systems 7, 4 (2008), 38:1–38:23.
DOI: https://doi.org/10.1145/1376804.1376806 Google ScholarDigital Library
- [5] . 2012. An adaptive file-system-oriented FTL mechanism for flash-memory storage systems. In ACM Transactions on Embedded Computing Systems 11, 1 (2012), 9:1–9:19.
DOI: https://doi.org/10.1145/2146417.2146426 Google ScholarDigital Library
- [6] . 2011. Leveraging value locality in optimizing NAND flash-based SSDs. In Proceedings of USENIX Conference on File and Storage Technologies (FAST’11). Google Scholar
Digital Library
- [7] . 2015. Adaptive wear-leveling in flash-based memory. In IEEE Computer Architecture Letters 14, 1 (2014) 1–4.Google Scholar
Digital Library
- [8] . 2018. A novel buffer management scheme based on particle swarm optimization for SSD. In The Journal of Supercomputing. 74, 1 (2018), 141–159. Google Scholar
Digital Library
- [9] . 2018. ShadowGC: Cooperative garbage collection with multi-level buffer for performance improvement in NAND flash-based SSDs. In Proceeding of Design, Automation & Test in Europe Conference & Exhibition (DATE’18).
DOI: https://doi.org/10.23919/DATE.2018.8342206Google ScholarCross Ref
- [10] . 2009. Improving flash wear-leveling by proactively moving static data. In IEEE Transactions on Computers 59, 1 (2009), 53–65.
DOI: https://doi.org/10.1109/TC.2009.134 Google ScholarDigital Library
- [11] . 2019. Pattern-based write scheduling and read balance-oriented wear-leveling for solid state drivers. In Proceedings of the Symposium on Mass Storage Systems and Technologies (MSST’19).
DOI: https://doi.org/10.1109/MSST.2019.00-10Google ScholarCross Ref
- [12] . 1999. Why does file system prefetching work?. In Proceedings of the USENIX Annual Technical Conference (ATC’99). Google Scholar
Digital Library
- [13] . 2012. Flashy prefetching for high-performance flash drives. In Proceedings of the Symposium on Mass Storage Systems and Technologies (MSST’12).
DOI: https://doi.org/10.1109/MSST.2012.6232367Google ScholarCross Ref
- [14] . 2016. Lynx: A learning linux prefetching mechanism for SSD performance model. In Proceedings of the Non-Volatile Memory Systems and Applications Symposium (NVMSA’16).
DOI: https://doi.org/10.1109/NVMSA.2016.7547186Google ScholarCross Ref
- [15] . Retrieved September 2020 from http://www.openssd-project.org.Google Scholar
- [16] . 2013. A prefetching scheme exploiting both data layout and access history on disk. In ACM Transactions on Storage 9, 3 (2013), 10:1–10:23.
DOI: https://doi.org/10.1145/2508010 Google ScholarDigital Library
- [17] . 2016. Prefetching on storage servers through mining access patterns on blocks. In IEEE Transactions on Parallel and Distributed Systems 27, 9 (2016), 2698–2710.
DOI: https://doi.org/10.1109/TPDS.2015.2496595 Google ScholarDigital Library
- [18] . 2013. I/O acceleration with pattern detection. In Proceedings of the International Symposium on High-Performance Parallel and Distributed Computing (HPDC’13).
DOI: https://doi.org/10.1145/2462902.2462909 Google ScholarDigital Library
- [19] . 2018. Towards memory prefetching with neural networks: Challenges and insights. https://arxiv.org/pdf/1804.00478v1.pdf.Google Scholar
- [20] . 2018. An efficient resource-optimized learning prefetcher for solid state drives. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE’18).
DOI: https://doi.org/10.1145/2462902.2462909Google ScholarCross Ref
- [21] . 2013. Active flash: Towards energy-efficient, in-situ data analytics on extreme-scale machines. In Proceedings of the USENIX Conference on File and Storage Technologies (FAST’13). Google Scholar
Digital Library
- [22] . 2016. Morpheus: Creating application objects efficiently for heterogeneous computing. In Proceedings of the ACM/IEEE Annual International Symposium on Computer Architecture (ISCA’16).
DOI: https://doi.org/10.1109/ISCA.2016.15 Google ScholarDigital Library
- [23] . 2015. BlueDBM: An appliance for big data analytics. In Proceedings of the ACM/IEEE Annual International Symposium on Computer Architecture (ISCA’15).
DOI: https://doi.org/10.1145/2749469.2750412 Google ScholarDigital Library
- [24] . 2019. REGISTOR: A platform for unstructured data processing inside SSD storage. In ACM Transactions on Storage 15, 1 (2019), 7:1–7:24.
DOI: https://doi.org/10.1145/3310149 Google ScholarDigital Library
- [25] . Measuring skewness and kurtosis. In Journal of the Royal Statistical Society: Series D (The Statistician).
DOI: https://doi.org/10.2307/2987742Google Scholar - [26] . 2016. Introduction to data mining. Pearson Education India.Google Scholar
- [27] . 2004. C-Miner: Mining block correlations in storage systems. In Proceedings of the USENIX Conference on File and Storage Technologies (FAST’04). Google Scholar
Digital Library
- [28] . 2016. Avoiding the streetlight effect: I/O workload analysis with SSDs in mind. In Proceedings of the USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage’16). Google Scholar
Digital Library
- [29] . 2017. TraceTracker: Hardware/software co-evaluation for large-scale I/O workload reconstruction. In Proceedings of the IEEE International Symposium on Workload Characterization (IISWC’17).
DOI: https://doi.org/10.1109/IISWC.2017.8167759Google ScholarCross Ref
- [30] . Retrieved March 2020 from http://traces.cs.umass.edu/index.php/Storage/Storage.Google Scholar
- [31] . 2008. Write off-loading: Practical power management for enterprise storage. In ACM Transactions on Storage 4, 3 (2008), 10:1–10:23.
DOI: https://doi.org/10.1145/1416944.1416949 Google ScholarDigital Library
- [32] . 2017. Understanding storage traffic characteristics on enterprise virtual desktop infrastructure. In Proceedings of the ACM International Systems and Storage Conference (SYSTOR’17).
DOI: https://doi.org/10.1145/3078468.3078479 Google ScholarDigital Library
- [33] . 2018. PA-SSD: A page-type aware TLC SSD for improved write/read performance and storage efficiency. In Proceedings of the International Conference on Supercomputing (ICS’18).
DOI: https://doi.org/10.1145/3205289.3205319 Google ScholarDigital Library
- [34] . 2020. Patch-based data management for dual-copy buffers in RAID-enabled SSDs. In IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 39, 11 (2020), 3956–3967.
DOI: https://doi.org/10.1109/TCAD.2020.3012252Google ScholarCross Ref
- [35] . 2020. Frequent access pattern-based prefetching inside of solid-state drives. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE’20).
DOI: https://doi.org/10.23919/DATE48585.2020.9116382 Google ScholarDigital Library
- [36] . 2014. Durable write cache in flash memory SSD for relational and NoSQL databases. In Proceedings of the ACM SIGMOD International Conference on Management of Data (SIGMOD’14).
DOI: https://doi.org/10.1145/2588555.2595632Google ScholarDigital Library
Index Terms
Pattern-Based Prefetching with Adaptive Cache Management Inside of Solid-State Drives
Recommendations
Frequent access pattern-based prefetching inside of solid-state drives
DATE '20: Proceedings of the 23rd Conference on Design, Automation and Test in EuropeThis paper proposes an SSD-inside data prefetching scheme, which has features of OS-dependence and use transparency. To be specific, it first mines frequent block access patterns that reflect the correlation among the occurred requests. Then it compares ...
Increasing hardware data prefetching performance using the second-level cache
Techniques to reduce or tolerate large memory latencies are critical for achieving high processor performance. Hardware data prefetching is one of the most heavily studied solutions, but it is essentially applied to first-level caches where it can ...
Stealth prefetching
Proceedings of the 2006 ASPLOS ConferencePrefetching in shared-memory multiprocessor systems is an increasingly difficult problem. As system designs grow to incorporate larger numbers of faster processors, memory latency and interconnect traffic increase. While aggressive prefetching ...






Comments