Abstract
Garbage collection (GC) plays a pivotal role in the performance of 3D NAND flash memory, where Copyback has been widely used to accelerate valid page migration during GC. Unfortunately, copyback is constrained by the parity symmetry issue: data read from an odd/even page must be written to an odd/even page. After migrating two odd/even consecutive pages, a free page between the two migrated pages will be wasted. Such wasted pages noticeably lower free space on flash memory and cause extra GCs, thereby degrading solid-state-disk (SSD) performance. To address this problem, we propose a page-state-aware cache scheme called PSA-Cache, which prevents page waste to boost the performance of NAND Flash-based SSDs. To facilitate making write-back scheduling decisions, PSA-Cache regulates write-back priorities for cached pages according to the state of pages in victim blocks. With high write-back-priority pages written back to flash chips, PSA-Cache effectively fends off page waste by breaking odd/even consecutive pages in subsequent garbage collections. We quantitatively evaluate the performance of PSA-Cache in terms of the number of wasted pages, the number of GCs, and response time. We compare PSA-Cache with two state-of-the-art schemes, GCaR and TTflash, in addition to a baseline scheme LRU. The experimental results unveil that PSA-Cache outperforms the existing schemes. In particular, PSA-Cache curtails the number of wasted pages of GCaR and TTflash by 25.7% and 62.1%, respectively. PSA-Cache immensely cuts back the number of GC counts by up to 78.7% with an average of 49.6%. Furthermore, PSA-Cache slashes the average write response time by up to 85.4% with an average of 30.05%.
- [1] . 2013. Error analysis and retention-aware error management for nand flash memory. Intel. Technol. J. 17, 1 (2013), 140–165.Google Scholar
- [2] . 2004. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Trans. Embed. Comput. Syst. 3, 4 (2004), 837–863.Google Scholar
Digital Library
- [3] . 2014. An efficient copy-back operation scheme using dedicated flash memory controller in solid-state disks. In Proceedings of the International Journal of Electrical Energy, Vol. 2.Google Scholar
Cross Ref
- [4] . 2011. Architectures and optimization methods of flash memory based storage systems. J. Syst. Arch. 57, 2 (2011), 214–227.
DOI: Google ScholarDigital Library
- [5] . 2019. Aging capacitor supported cache management scheme for solid-state drives. IEEE Trans. Comput.-Aided Design Integr. Circ. Syst. 39, 10 (2019), 2230–2239.Google Scholar
Cross Ref
- [6] . 2019. Improving SSD performance using adaptive restricted-copyback operations. In Proceedings of the IEEE Non-Volatile Memory Systems and Applications Symposium. 1–6.Google Scholar
Cross Ref
- [7] . 2015. LAMA: Optimized locality-aware memory allocation for key-value cache. In Proceedings of the USENIX Annual Technical Conference. 57–69.Google Scholar
- [8] . 2015. PASS: A proactive and adaptive SSD buffer scheme for data-intensive workloads. In Proceedings of the IEEE International Conference on Networking, Architecture, and Storage. 54–63.Google Scholar
Cross Ref
- [9] . 2011. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In Proceedings of the 25th International Conference on Supercomputing. 96–107.Google Scholar
Digital Library
- [10] . 2009. Vertical cell array using TCAT (terabit cell array transistor) technology for ultra high density NAND flash memory. In Proceedings of the IEEE Symposium on VLSI Technology. 192–193.Google Scholar
- [11] . 2012. A technique to improve garbage collection performance for NAND flash-based storage systems. IEEE Trans. Consum. Electr. 58, 2 (2012), 470–478.Google Scholar
Cross Ref
- [12] . 2008. BPLRU: A buffer management scheme for improving random writes in flash storage. In Proceedings of the 15th USENIX Conference on File and Storage Technologies. 1–14.Google Scholar
- [13] . 2007. UMASS Trace Repository. Retrieved from http://traces.cs.umass.edu/index.php/Storage/Storage.Google Scholar
- [14] . 2011. A semi-preemptive garbage collector for solid state drives. In Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software. 12–21.Google Scholar
Digital Library
- [15] . 2018. Pen: Design and evaluation of partial-erase for 3D NAND-based high density SSDs. In Proceedings of the 16th USENIX Conference on File and Storage Technologies. 67–82. Google Scholar
- [16] . 2015. Partial block erase for a three dimensional (3D) memory. (
May 19 2015).U.S. Patent 9286989. Google Scholar - [17] . 2015. Nonvolatile memory device and sub-block managing method thereof. (
Feb. 24 2015).U.S. Patent 8964481. Google Scholar - [18] . 2021. Open NAND Flash Interface Specification Revision 5.0. Retrieved from https://www.onfi.org/specifications.Google Scholar
- [19] . Samsung 980 Pro NVMe SSD. Retrieved from https://www.samsung.com/cn/memory-storage/nvme-ssd/980-pro-nvme-m-2-1tb-mz-v8p500bw.Google Scholar
- [20] . Samsung k9xxg08uxa Nand Flash Memory Datasheet. Retrieved from http://www.samsung.com/products/semiconductor/flash/technicallinfo/datasheets.Google Scholar
- [21] . 2010. An adaptive partitioning scheme for DRAM-based cache in solid state drives. In Proceedings of the 26th IEEE Symposium on Mass Storage Systems and Technologies. 1–12.Google Scholar
Digital Library
- [22] . 2020. Towards unaligned writes optimization in cloud storage with high-performance SSDs. IEEE Trans. Parallel Distrib. Syst. 31, 12 (2020), 2923–2937. Google Scholar
Cross Ref
- [23] . 2007. MSR Cambridge Traces. Retrieved from http://iotta.snia.org/traces/block-io/388?only=386.Google Scholar
- [24] . 2013. NAND Memory Toggle DDR1.0 Technical Data Sheet. Tokyo, Japan.Google Scholar
- [25] . 2016. 3D Flash Memory Toggle DDR2.0 Technical Data Sheet. Tokyo, Japan.Google Scholar
- [26] . 2021. An efficient data migration scheme to optimize garbage collection in SSDs. IEEE Trans. Comput.-Aided Design Integr. Circ. Syst. 40, 3 (2021), 430–443. Google Scholar
Cross Ref
- [27] . 2018. FastGC: Accelerate garbage collection via an efficient copyback-based data migration in SSDs. In Proceedings of the 55th Design Automation Conference. 1–6. Google Scholar
Digital Library
- [28] . 2017. Improving performance for flash-based storage systems through GC-aware cache management. IEEE Trans. Parallel Distrib. Syst. 28, 10 (2017), 2852–2865. Google Scholar
Digital Library
- [29] . 2020. GC-steering: GC-aware request steering and parallel reconstruction optimizations for SSD-based RAIDs. IEEE Trans. Comput.-Aided Design Integr. Circ. Syst. 39, 12 (2020), 4587–4600. Google Scholar
Cross Ref
- [30] . 2017. Tiny-tail flash: Near-perfect elimination of garbage collection tail latencies in NAND SSDs. In Proceedings of the 15th USENIX Conference on File and Storage Technologies. 15–28. Google Scholar
Digital Library
- [31] . 2014. Garbage collection and wear leveling for flash memory: Past and future. In Proceedings of the International Conference on Smart Computing. 66–73.Google Scholar
Cross Ref
- [32] . 2023. Cocktail: Mixing data with different characteristics to reduce read reclaims for NAND flash memory. IEEE Trans. Comput.-Aided Design Integr. Circ. Syst. 42, 1 (2023), 1–14.
DOI: Google ScholarCross Ref
- [33] . 2020. Improving overall performance of TLC SSD by exploiting dissimilarity of flash pages. IEEE Trans. Parallel Distrib. Syst. 31, 2 (2020), 332–346.Google Scholar
Digital Library
- [34] . 2020. Efficient SSD cache for cloud block storage via leveraging block reuse distances. IEEE Trans. Parallel Distrib. Syst. 31, 11 (2020), 2496–2509. Google Scholar
Cross Ref
- [35] . 2017. Understanding and alleviating the impact of the flash address translation on solid state devices. ACM Trans. Stor. 13, 2 (2017). Google Scholar
Index Terms
PSA-Cache: A Page-state-aware Cache Scheme for Boosting 3D NAND Flash Performance
Recommendations
Flash-Aware High-Performance and Endurable Cache
MASCOTS '15: Proceedings of the 2015 IEEE 23rd International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication SystemsFlash-based SSDs are widely used as storage caches, which can benefit from both the higher performance of SSDs and lower price of disks. Unfortunately, issues of reliability and limited lifetime limit the use of Flash-based cache. One way to solve this ...
Reusability-aware cache memory sharing for chip multiprocessors with private L2 caches
In this paper, we propose a novel on-chip L2 cache organization for chip multiprocessors (CMPs) with private L2 caches. The proposed approach, called reusability-aware cache sharing (RACS), combines the advantages of both a private L2 cache and a shared ...
Layer RBER variation aware read performance optimization for 3D flash memories
DAC '20: Proceedings of the 57th ACM/EDAC/IEEE Design Automation Conference3D NAND flash enables the construction of large capacity Solid-State Drives (SSDs) for modern computer systems. While effectively reducing per bit cost, 3D NAND flash exhibits non-negligible process variations and thus RBER (raw bit error rate) ...






Comments