{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,18]],"date-time":"2026-08-18T04:56:06Z","timestamp":1787028966339,"version":"build-2736575974"},"reference-count":35,"publisher":"MDPI AG","issue":"4","license":[{"start":{"date-parts":[[2023,3,31]],"date-time":"2023-03-31T00:00:00Z","timestamp":1680220800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"SeoulTech (Seoul National University of Science and Technology)"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Micromachines"],"abstract":"<jats:p>As high-performance server-based applications become more prevalent, there is a growing demand for high-performance storage solutions. In response, SSDs that use NAND flash memory as storage media are quickly replacing hard disks in the high-performance storage market. One way to improve SSD performance is to use an internal large-capacity memory as a buffer cache for NAND. Previous studies have shown that early flushing, which ensures sufficient clean buffers by flushing dirty buffers to NAND in advance when the ratio of dirty buffers exceeds a threshold, significantly reduces the average response time of I\/O requests. However, the early flush can also have a negative side effect, namely an increase in NAND write operations. To address this problem, this study proposes a selective early flush policy. This policy evaluates the likelihood of a candidate dirty buffer being rewritten upon the early flush, and delays flushing if the candidate has a high rewrite likelihood. Through this selective early flush, the proposed policy reduces NAND write operations by up to 18.0% compared to the existing early flush policy in the mixed trace. Additionally, the response time of I\/O requests is also improved in most of the considered configurations.<\/jats:p>","DOI":"10.3390\/mi14040796","type":"journal-article","created":{"date-parts":[[2023,3,31]],"date-time":"2023-03-31T09:12:59Z","timestamp":1680253979000},"page":"796","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":4,"title":["Early Dirty Buffer Flush with Second Chance for SSDs"],"prefix":"10.3390","volume":"14","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-2819-0398","authenticated-orcid":false,"given":"Ilhoon","family":"Shin","sequence":"first","affiliation":[{"name":"Department of Electronic Engineering, Seoul National University of Science and Technology, Seoul 01811, Republic of Korea"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"1968","published-online":{"date-parts":[[2023,3,31]]},"reference":[{"key":"ref_1","unstructured":"Liu, C.Y., Kotra, J.B., Jung, M., and Kandemir, M.T. (2018, January 12\u201315). PEN: Design and evaluation of oartial-erase for 3D NAND-based high density SSDs. Proceedings of the USENIX FAST, Oakland, CA, USA."},{"key":"ref_2","doi-asserted-by":"crossref","unstructured":"Chen, T.Y., Chang, Y.H., Ho, C.C., and Chen, S.H. (2016, January 12\u201315). Enabling sub-blocks erase management to boost the performance of 3D NAND flash memory. Proceedings of the DAC, Oakland, CA, USA.","DOI":"10.1145\/2897937.2898018"},{"key":"ref_3","unstructured":"Hong, D., Kim, M., Cho, G., Lee, D., and Kim, J. (2022, January 22\u201324). GuardedErase: Extending SSD lifetimes by protecting weak wordlines. Proceedings of the USENIX FAST, Santa Clara, CA, USA."},{"key":"ref_4","unstructured":"Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M.S., and Panigrahy, R. (2008, January 14\u201319). Design tradeoffs for SSD performance. Proceedings of the USENIX ATC, Berkeley, CA, USA."},{"key":"ref_5","doi-asserted-by":"crossref","unstructured":"Ruan, X.J., Alghamdi, M.I., Jiang, X.F., Zong, Z.L., Tian, Y., and Qin, X. (2012, January 1\u20133). Improving write performance by enhancing internal parallelism of solid state drives. Proceedings of the IEEE IPCCC, Austin, TX, USA.","DOI":"10.1109\/PCCC.2012.6407767"},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"9","DOI":"10.1109\/L-CA.2010.3","article-title":"Exploiting internal parallelism of flash-based SSDs","volume":"9","author":"Park","year":"2010","journal-title":"IEEE Comput. Arch. Lett."},{"key":"ref_7","doi-asserted-by":"crossref","first-page":"1978","DOI":"10.1049\/el.2015.1840","article-title":"Enhancing internal parallelism of solid-state drives while balancing write loads across dies","volume":"51","author":"Winata","year":"2015","journal-title":"Electron. Lett."},{"key":"ref_8","doi-asserted-by":"crossref","unstructured":"Chen, F., Lee, R., and Zhang, X.D. (2011, January 12\u201316). Essential roles of exploiting internal parallelism of flash memory based solid state srives in high-speed data processing. Proceedings of the 2011 IEEE 17th HPCA, San Antonio, TX, USA.","DOI":"10.1109\/HPCA.2011.5749735"},{"key":"ref_9","unstructured":"Hu, Y., Jiang, H., Feng, D., Tian, L., Luo, H., and Zhang, S. (June, January 31). Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. Proceedings of the ACM ICS, Tucson, AZ, USA."},{"key":"ref_10","doi-asserted-by":"crossref","first-page":"64","DOI":"10.1049\/el.2017.3912","article-title":"Improving internal parallelism of solid state drives with selective multi-plane operation","volume":"54","author":"Shin","year":"2018","journal-title":"Electron. Lett."},{"key":"ref_11","doi-asserted-by":"crossref","first-page":"485","DOI":"10.1109\/TCE.2006.1649669","article-title":"FAB: Flash-aware buffer management policy for portable media players","volume":"52","author":"Jo","year":"2006","journal-title":"IEEE Trans. Consum. Electron."},{"key":"ref_12","unstructured":"Kim, H., and Ahn, S. (2008, January 26\u201329). BPLRU: A buffer management scheme for improving random writes in flash storage. Proceedings of the USENIX FAST, San Jose, CA, USA."},{"key":"ref_13","doi-asserted-by":"crossref","first-page":"744","DOI":"10.1109\/TC.2008.224","article-title":"Performance trade-offs in using NVRAM write buffer for flash memory-based storage devices","volume":"58","author":"Kang","year":"2009","journal-title":"IEEE Trans. Comput."},{"key":"ref_14","doi-asserted-by":"crossref","unstructured":"Park, S.-Y., Jung, D., Kang, J.-U., Kim, J.-S., and Lee, J. (2006, January 22\u201325). CFLRU: A replacement algorithm for flash memory. Proceedings of the ACM CASES, Seoul, Republic of Korea.","DOI":"10.1145\/1176760.1176789"},{"key":"ref_15","doi-asserted-by":"crossref","first-page":"1351","DOI":"10.1109\/TCE.2009.5277999","article-title":"CCF-LRU: A new buffer replacement algorithm for flashmMemory","volume":"55","author":"Li","year":"2009","journal-title":"IEEE Trans. Consum. Electron."},{"key":"ref_16","doi-asserted-by":"crossref","first-page":"38","DOI":"10.1109\/TCE.2014.6780923","article-title":"CLRU: A new page replacement algorithm for NAND flash-based consumer electronics","volume":"60","author":"Xu","year":"2014","journal-title":"IEEE Trans. Consum. Electron."},{"key":"ref_17","doi-asserted-by":"crossref","first-page":"83","DOI":"10.1016\/j.datak.2011.09.007","article-title":"AD-LRU: An efficient buffer replacement algorithm for flash-based databases","volume":"72","author":"Jin","year":"2012","journal-title":"Data Knowl. Eng."},{"key":"ref_18","doi-asserted-by":"crossref","first-page":"12626","DOI":"10.1109\/ACCESS.2017.2723758","article-title":"PR-LRU: A novel buffer replacement algorithm based on the probability of reference for flash memory","volume":"5","author":"Yuan","year":"2017","journal-title":"IEEE Access"},{"key":"ref_19","doi-asserted-by":"crossref","first-page":"85","DOI":"10.1109\/TCE.2017.014700","article-title":"CLOCK-DNV: A write buffer algorithm for flash storage devices of consumer electronics","volume":"63","author":"Kang","year":"2017","journal-title":"IEEE Trans. Consum. Electron."},{"key":"ref_20","doi-asserted-by":"crossref","first-page":"20180419","DOI":"10.1587\/elex.15.20180419","article-title":"Performance analysis of buffer management policy considering internal parallelism of solid state drives","volume":"15","author":"Shin","year":"2018","journal-title":"IEICE Electron. Express"},{"key":"ref_21","unstructured":"Narayanan, D., Thereska, E., Donnelly, A., Elnikety, S., and Rowstron, A. (April, January 31). Migrating server storage to SSDs: Analysis of tradeoffs. Proceedings of the Eurosys, Nuremberg, Germany."},{"key":"ref_22","doi-asserted-by":"crossref","unstructured":"Pan, Y.Y., Dong, G.Q., Wu, Q., and Zhang, T. (2012, January 25\u201329). Quasi-Nonvolatile SSD: Trading flash memory nonvolatility to improve storage system performance for enterprise applications. Proceedings of the IEEE HPCA, New Orleans, LA, USA.","DOI":"10.1109\/HPCA.2012.6168954"},{"key":"ref_23","doi-asserted-by":"crossref","unstructured":"Shin, J.Y., Xia, Z.L., Xu, N.Y., Gao, R., Cai, X.F., Maeng, S., and Hsu, F.H. (2009, January 8\u201312). FTL design exploration in reconfigurable high-performance SSD for server applications. Proceedings of the ACM ICS, Yorktown Heights, NY, USA.","DOI":"10.1145\/1542275.1542324"},{"key":"ref_24","unstructured":"Maneas, S., Mahdaviani, K., Emami, T., and Schroeder, B. (2022, January 22\u201324). Operational characteristics of SSDs in enterprise storage systems: A large-scale field study. Proceedings of the USENIX FAST, Santa Clara, CA, USA."},{"key":"ref_25","doi-asserted-by":"crossref","first-page":"143124","DOI":"10.1109\/ACCESS.2020.3014129","article-title":"Dynamic early dirty buffer flush to reduce miss penalty in solid-state drives","volume":"8","author":"Shin","year":"2020","journal-title":"IEEE Access"},{"key":"ref_26","unstructured":"Shasha, D., and Johnson, T. (1994, January 12\u201315). 2q: A low overhead high performance buffer management replacement algoritm. Proceedings of the VLDB, Santiago de Chile, Chile."},{"key":"ref_27","doi-asserted-by":"crossref","first-page":"1352","DOI":"10.1109\/TC.2001.970573","article-title":"LRFU: A spectrum of policies that subsumes the least recently used and least frequently used policies","volume":"50","author":"Lee","year":"2001","journal-title":"IEEE Trans. Comput."},{"key":"ref_28","doi-asserted-by":"crossref","first-page":"297","DOI":"10.1145\/170036.170081","article-title":"The LRU-K page replacement algorithm for database disk buffering","volume":"22","author":"Weikum","year":"1993","journal-title":"ACM Sigmod Rec."},{"key":"ref_29","unstructured":"Kawaguchi, A., Nishioka, S., and Motoda, H. (1995, January 16\u201320). A flash-memory based file system. Proceedings of the USENIX ATC, New Orleans, LA, USA."},{"key":"ref_30","doi-asserted-by":"crossref","first-page":"366","DOI":"10.1109\/TCE.2002.1010143","article-title":"A space-efficient flash translation layer for compactflash systems","volume":"48","author":"Kim","year":"2002","journal-title":"IEEE Trans. Consum. Electron."},{"key":"ref_31","doi-asserted-by":"crossref","first-page":"18-es","DOI":"10.1145\/1275986.1275990","article-title":"A log buffer-based flash translation layer using fully-associative sector translation","volume":"6","author":"Lee","year":"2007","journal-title":"ACM Trans. Embed. Comput. Syst."},{"key":"ref_32","doi-asserted-by":"crossref","first-page":"20130942","DOI":"10.1587\/elex.10.20130942","article-title":"Active log pool for fully associative sector translation","volume":"11","author":"Shin","year":"2014","journal-title":"IEICE Electron. Express"},{"key":"ref_33","unstructured":"Kang, D., Jeong, W., Kim, C., Kim, D.H., Cho, Y.S., Kang, K.T., Ryu, J., Kang, K.M., Lee, S., and Kim, W. (February, January 31). 256Gb 3b\/Cell V-NAND flash memory with 48 stacked wl layers. Proceedings of the IEEE ISSCC, San Francisco, CA, USA."},{"key":"ref_34","doi-asserted-by":"crossref","unstructured":"Yamashita, R., Magia, S., Higuchi, T., Yoneya, K., Yamamura, T., Mizukoshi, H., Zaitsu, S., Yamashita, M., Toyama, S., and Kamae, N. (2017, January 5\u20139). 11.1 A 512Gb 3b\/cell flash memory on 64-word-line-layer BiCS technology. Proceedings of the IEEE ISSCC, San Francisco, CA, USA.","DOI":"10.1109\/ISSCC.2017.7870328"},{"key":"ref_35","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/1416944.1416949","article-title":"Write off-loading: Practical power management for enterprise storage","volume":"4","author":"Narayanan","year":"2008","journal-title":"ACM Trans. Storage"}],"container-title":["Micromachines"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2072-666X\/14\/4\/796\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T19:07:31Z","timestamp":1760123251000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2072-666X\/14\/4\/796"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,3,31]]},"references-count":35,"journal-issue":{"issue":"4","published-online":{"date-parts":[[2023,4]]}},"alternative-id":["mi14040796"],"URL":"https:\/\/doi.org\/10.3390\/mi14040796","relation":{},"ISSN":["2072-666X"],"issn-type":[{"value":"2072-666X","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,3,31]]}}}