Abstract
Flash-based solid state drives (SSDs) are becoming popular as the storage media in recent years. In SSDs, translation pages normally store the address mapping information for data blocks. With the increasing capacity of SSDs, the management of translation pages is becoming a critical issue. In this paper, we present Data-Assemblage, a translation-page-aware data block allocation strategy for demand-based page-level address mappings in flash-based SSDs. Data-Assemblage is motivated by two observations: First, the translation page copy operations during garbage collection may significantly degrade the system performance. Second, the allocation of data blocks will directly impact the update operations in translation pages. By assembling write requests that share the same translation page into one data block, Data-Assemblage significantly reduces the page copies of translation pages and improves the average response time while retaining its space utilization and RAM cost. We evaluate Data-Assemblage using a set of benchmarks from both real-world and synthetic traces. Experimental results show that our scheme can achieve a 90.92 % reduction in the extra translation overhead and improve system performance by 22.14 % compared with the previous work.
Similar content being viewed by others
References
A Simulator for various FTL schemes. http://csl.cse.psu.edu/?q=node/322
Ban A (1995) Flash file system. US patent 5,404,485
Ban A (1998) Flash-memory translation layer for NAND flash (NFTL). M-systems
Bux W (2011) System performance issues in flash-based solid-state drives. IBM Research Report
Cho H, Shin D, Eom YI (2009) KAST: K-associative sector translation for NAND flash memory in real-time systems. In: Design, Automation & Test in Europe (DATE’09), pp 507–512
Choudhuri S, Givargis T (2007) Performance improvement of block based nand flash translation layer. In: International conference on hardware/software codesign and system synthesis (CODES+ISSS’07), pp 257–262
Choudhuri S, Givargis T (2008) Deterministic service guarantees for NAND flash using partial block cleaning. In: International conference on hardware/software codesign and system synthesis (CODES+ISSS’08), pp 19–24.doi:10.1145/1450135.1450141
Chung TS, Park DJ, Park S, Lee DH, Lee SW, Song HJ (2009) A survey of flash translation layer. J Syst Archit 55(5–6), 332–343.doi:10.1016/j.sysarc.2009.03.005
Feng C, Tian L, Xiaodong Z (2011) CAFTL: a content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. In: USENIX Conference on file and storage technologies (FAST’11)
G.R. Ganger, B.W., Patt, Y.: The disksim simulation environment Version 3.0 Reference Manual
Gupta A, Kim Y, Urgaonkar B (2009) DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings. In: ASPLOS’09, pp 229–240 . doi:10.1145/1508244.1508271
Intel Corporation. Understanding the flash translation layer (FTL) specification. http://developer.intel.com
Kang JU, Jo H, Kim JS, Lee J (2006) A superblock based flash translation layer for NAND flash memory. In: International conference on embedded software (EMSOFT’06), pp 161–170. doi:10.1145/1176887.1176911
Kim J, Kim JM, Noh S, Min SL, Cho Y (2002) A space-efficient flash translation layer for CompactFlash systems. IEEE Trans Consum Electron 48(2):366–375
Lee SW, Park DJ, Chung TS, Lee DH, Park S, Song HJ (2007) A log buffer-based flash translation layer using fully-associative sector translation. ACM Trans Embed Comput Syst 6(3):18.doi:10.1145/1275986.1275990
Ma D, Feng J, Li G (2011) LazyFTL: a page-level flash translation layer optimized for NAND flash memory. In: SIGMOD’11, pp 1–12
OLTP trace from umass trace repository. http://traces.cs.umass.edu/index.php/Storage/Storage
Qin Z, Wang Y, Liu D, Shao Z (2011) A two-level caching mechanism for demand-based page-level address mapping in NAND flash memory storage systems. In: Real-time and embedded technology and applications symposium (RTAS’11), pp 157–166
Seongwook J, Jaehong K, Jaegeuk K, Jaehyuk H, Seungryoul M (2011) Sector Log: fine-grained storage management for solid state drives. In: Symposium on applied computing (SAC’11)
Shi L, Li J, Xue CJ, Yang C, Zhou X (2011) Exlru: a unified write buffer cache management for flash memory. In: EMSOFT’11, pp 339–348
Shim G, Park Y, Park KH (2011) A hybrid flash translation layer with adaptive merge for SSDs. ACM Trans Storage 6(15), 15:1–15:27
Shi L, Xue CJ, Zhou X (2011) Cooperating write buffer cache and virtual memory management for flash memory based systems. In: RTAS’11, pp 147–156
Websearch trace from umass trace repository.http://traces.cs.umass.edu/index.php/Storage/Storage
Zhang Q, Li X, Wang L, Zhang T, Wang Y, Shao Z (2013) Optimizing translation information management in nand flash memory storage systems. In: Proceedings of 18th Asia and South Pacific design automation conference, ASP-DAC ’13, pp 326–331.doi:10.1109/ASPDAC.2013.6509616
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Zhang, Q., Li, X., Wang, L. et al. Data-assemblage: a translation-page-aware data block allocation strategy for flash-based solid state drives. Des Autom Embed Syst 17, 565–586 (2013). https://doi.org/10.1007/s10617-014-9154-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10617-014-9154-5