Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Public Access

Understanding and Alleviating the Impact of the Flash Address Translation on Solid State Devices

Published: 22 May 2017 Publication History

Abstract

Flash-based solid state devices (SSDs) have been widely employed in consumer and enterprise storage systems. However, the increasing SSD capacity imposes great pressure on performing efficient logical to physical address translation in a page-level flash translation layer (FTL). Existing schemes usually employ a built-in RAM to store mapping information, called mapping cache, to speed up the address translation. Since only a fraction of the mapping table can be cached due to limited cache space, a large number of extra flash accesses are required for cache management and garbage collection, degrading the performance and lifetime of an SSD. In this paper, we first apply analytical models to investigate the key factors that incur extra flash accesses during address translation. Then, we propose a novel page-level FTL with an efficient translation page-level caching mechanism, named TPFTL, to minimize the extra flash accesses. TPFTL employs a two-level least recently used (LRU) list with space-efficient optimizations to organize cached mapping entries. Inspired by the models, we further design a workload-adaptive loading policy combined with an efficient replacement policy to increase the cache hit rate and reduce the writebacks of replaced dirty entries. Finally, we evaluate TPFTL using extensive trace-driven simulations. Our evaluation results show that compared to the state-of-the-art FTLs, TPFTL significantly reduces the extra operations caused by address translation, achieving reductions on system response time and write amplification by up to 27.1% and 32.2%, respectively.

References

[1]
Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design tradeoffs for SSD performance. In Proceedings of USENIX Annual Technical Conference (ATC’08).
[2]
Dulcardo Arteaga and Ming Zhao. 2014. Client-side flash caching for cloud systems. In Proceedings of ACM International Conference on Systems and Storage (SYSTOR’14).
[3]
Ken Bates and Bruce McNutt. 2013. Traces from UMass Trace Repository. Retrieved from http://traces.cs.umass.edu/index.php/Storage/Storage.
[4]
Feng Chen, Tian Luo, and Xiaodong Zhang. 2011. CAFTL: A content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. In Proceedings of the 9th USENIX Conference on File and Stroage Technologies (FAST’11).
[5]
Tae-Sun Chung, Dong-Joo Park, Sangwon Park, Dong-Ho Lee, Sang-Won Lee, and Ha-Joo Song. 2006. System software for flash memory: A survey. In Proceedings of Springer International Conference on Embedded and Ubiquitous Computing.
[6]
Biplob Debnath, Srinivasan Krishnan, Weijun Xiao, David J. Lilja, and David Du. 2011. Sampling-based garbage collection metadata management scheme for flash-based storage. In Proceedings of Mass Storage Systems and Technologies (MSST’11).
[7]
Peter Desnoyers. 2012. Analytic modeling of SSD write performance. In Proceedings of the 5th ACM Annual International Systems and Storage Conference (SYSTOR’12).
[8]
Eran Gal and Sivan Toledo. 2005. Algorithms and data structures for flash memories. ACM Computing Surveys (CSUR) 37, 2 (June 2005), 138--163.
[9]
Garth Goodson and Rahul Iyer. 2010. Design tradeoffs in a flash translation layer. In Proceedings of Workshop on the Use of Emerging Storage and Memory Technologies.
[10]
Jim Gray and Bob Fitzgerald. 2008. Flash disk opportunity for server applications. Queue - Enterprise Flash Storage 6, 4 (July 2008), 18--23.
[11]
Aayush Gupta, Youngjae Kim, and Bhuvan Urgaonkar. 2009. DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating System (ASPLOS’09).
[12]
Xiaoyu Hu, Evangelos Eleftheriou, Robert Haas, Ilias Iliadis, and Roman Pletka. 2009. Write amplification analysis in flash-based solid state drives. In Proceedings of SYSTOR: the Israeli Experimental Systems Conference.
[13]
Yang Hu, Hong Jiang, Dan Feng, Lei Tian, Shuping Zhang, Jingning Liu, Wei Tong, Yi Qin, and Liuzheng Wang. 2010. Achieving page-mapping FTL performance at block-mapping FTL cost by hiding address translation. In Proceedings of Mass Storage Systems and Technologies (MSST’10).
[14]
Ping Huang, Guanying Wu, Xubin He, and Weijun Xiao. 2014. An aggressive worn-out flash block management scheme to alleviate SSD performance degradation. In Proceedings of the 9th European Conference on Computer Systems (EuroSys’14).
[15]
Ashish Jagmohan, Michele Franceschini, and Luis Lastras. 2010. Write amplification reduction in NAND flash through multi-write coding. In Proceedings of Mass Storage Systems and Technologies (MSST’10).
[16]
S. Jiang, Lei Zhang, XinHao Yuan, Hao Hu, and Yu Chen. 2011. S-FTL: An efficient address translation for flash memory by exploiting spatial locality. In Proceedings of Mass Storage Systems and Technologies (MSST’11).
[17]
Myoungsoo Jung and Mahmut T. Kandemir. 2014. Sprinkler: Maximizing resource utilization in many-chip solid state disks. In Proceedings of the 20st IEEE International Symposium on High Performance Computer Architecture (HPCA’14).
[18]
Sohyang Ko, Seonsoo Jun, Kiyong Kim, and Yeonseung Ryu. 2008. Study on garbage collection schemes for flash-based linux swap system. In Proceedings of Advanced Software Engineering and Its Applications (ASEA’08).
[19]
Sang-Won Lee, Dong-Joo Park, Tae-Sun Chung, Dong-Ho Lee, Sangwon Park, and Ha-Joo Song. 2007. A log buffer-based flash translation layer using fully-associative sector translation. ACM Transactions on Embedded Computing Systems (TECS) 6, 3 (July 2007), 18 pages.
[20]
Sungjin Lee, Dongkun Shin, Young-Jin Kim, and Jihong Kim. 2008. LAST: Locality-aware sector translation for NAND flash memory-based storage systems. ACM SIGOPS Operating Systems Review 42, 6 (Oct. 2008), 36--42.
[21]
Cheng Li, Philip Shilane, Fred Douglis, Darren Sawyer, and Hyong Shim. 2014. Assert(!defined(sequential I/O)). In Proceedings of the 6th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage’14).
[22]
Mingju Li, Elizabeth Varki, Swapnil Bhatia, and Arif Merchant. 2008. TaP: Table-based prefetching for storage caches. In Proceedings of the 6th USENIX Conference on File and Storage Technologies (FAST’08).
[23]
Youyou Lu, Jiwu Shu, and Weimin Zheng. 2013. Extending the lifetime of flash-based storage through reducing write amplification from file systems. In Proceedings of the 11th USENIX Conference on File and Storage Technologies (FAST’13).
[24]
Dongzhe Ma, Jianhua Feng, and Guoliang Li. 2011. LazyFTL: A page-level flash translation layer optimized for NAND flash memory. In Proceedings of the 2011 ACM SIGMOD International Conference on Management of Data.
[25]
Nimrod Megiddo and Dharmendra S. Modha. 2003. ARC: A self-tuning, low overhead replacement cache. In Proceedings of the 2nd USENIX Conference on File and Storage Technologies (FAST’03).
[26]
Microsoft. 2013. MSR Cambridge Traces. Retrieved from http://iotta.snia.org/traces/388.
[27]
Changwoo Min, Kangnyeon Kim, Hyunjin Cho, Sang-Won Lee, and Young Ik Eom. 2012. SFS: Random write considered harmful in solid state drives. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12).
[28]
Wang Mingbang, Zhang Youguang, and Kang Wang. 2011. ZFTL: A zone-based flash translation layer with a two-tier selective caching mechanism. In Proceedings of the 14th IEEE International Conference on Communication Technology (ICCT’11).
[29]
Sangwhan Moon and AL Narasimha Reddy. 2012. Write amplification due to ECC on flash memory or leave those bit errors alone. In Proceedings of Mass Storage Systems and Technologies (MSST’12).
[30]
Dongchul Park, Biplob Debnath, and David Du. 2010. CFTL: A convertible flash translation layer adaptive to data access patterns. ACM SIGMETRICS Perform. Eval. Rev. (2010).
[31]
Z. W. Qin, Y. Wang, D. Liu, and Z. Shao. 2011. A two-level caching mechanism for demand-based page-level address mapping in NAND flash memory storage systems. In Proceedings of the 17th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’11).
[32]
Samsung. 2014. SSD 840 EVO 2.5” SATA III 1TB. Retrieved from http://www.samsung.com/us/computer/memory-storage/MZ-7TE1T0BW.
[33]
Vasily Tarasov, Dean Hildebrand, Geoff Kuenning, and Erez Zadok. 2013. Virtual machine workloads: The case for new benchmarks for NAS. In Proceedings of USENIX Conference on File and Storage Technologies (FAST’13).
[34]
Kristian Vättö. 2013. LSI Announces SandForce SF3700: SATA and PCIe in One Silicon. Retrieved from http://www.anandtech.com/show/7520/.
[35]
Chundong Wang and Wengfai Wong. 2013. TreeFTL: Efficient RAM management for high performance of NAND flash-based storage systems. In Proceedings of the Conference on Design, Automation and Test in Europe.
[36]
Qingsong Wei, Bozhao Gong, Suraj Pathak, Bharadwaj Veeravalli, LingFang Zeng, and Kanzo Okada. 2011. WAFTL: A workload adaptive flash translation layer with data partition. In Proceedings of Mass Storage Systems and Technologies (MSST’11).
[37]
Guanying Wu, Benjamin Eckart, and Xubin He. 2010. BPAC: An adaptive write buffer management scheme for flash-based solid state drives. In Proceedings of Mass Storage Systems and Technologies (MSST’10).
[38]
Qianbin Xia and Weijun Xiao. 2015. Flash-aware high-performance and endurable cache. In Proc. of the 23rd IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS’15).
[39]
Zhiyong Xu, Ruixuan Li, and Cheng-Zhong Xu. 2012. CAST: A page-level FTL with compact address mapping and parallel data blocks. In Proceedings of the 31st IEEE International Performance Computing and Communications Conference (IPCCC’12).
[40]
Yue Yang and Jianwen Zhu. 2014. Analytical modeling of garbage collection algorithms in hotness-aware flash-based solid state drives. In Proceedings of Mass Storage Systems and Technologies (MSST’14).
[41]
You Zhou, Fei Wu, Ping Huang, Xubin He, Changsheng Xie, and Jian Zhou. 2015. An efficient page-level FTL to optimize address translation in flash memory. In Proceedings of the 10th ACM European Conference on Computer Systems (EuroSys’15).

Cited By

View all
  • (2025)Program context-assisted address translation for high-capacity SSDsFuture Generation Computer Systems10.1016/j.future.2024.107483162(107483)Online publication date: Jan-2025
  • (2024)CCFTL: A novel continuity compressed page-level flash address mapping method for SSDsJournal of Parallel and Distributed Computing10.1016/j.jpdc.2024.104917191(104917)Online publication date: Sep-2024
  • (2023)CRFTL: Cache Reallocation-Based Page-Level Flash Translation Layer for SmartphonesIEEE Transactions on Consumer Electronics10.1109/TCE.2023.326421769:3(671-679)Online publication date: 1-Aug-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Storage
ACM Transactions on Storage  Volume 13, Issue 2
Special Issue on MSST 2016 and Regular Papers
May 2017
199 pages
ISSN:1553-3077
EISSN:1553-3093
DOI:10.1145/3098275
  • Editor:
  • Sam H. Noh
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 May 2017
Accepted: 01 January 2017
Revised: 01 January 2017
Received: 01 October 2015
Published in TOS Volume 13, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. FTL
  2. NAND flash memory
  3. SSD
  4. address translation

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • U.S. National Science Foundation
  • Key Laboratory of Data Storage System
  • Ministry of Education of China
  • National Basic Research Program of China (973 Program)
  • National Natural Science Foundation of China

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)130
  • Downloads (Last 6 weeks)31
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2025)Program context-assisted address translation for high-capacity SSDsFuture Generation Computer Systems10.1016/j.future.2024.107483162(107483)Online publication date: Jan-2025
  • (2024)CCFTL: A novel continuity compressed page-level flash address mapping method for SSDsJournal of Parallel and Distributed Computing10.1016/j.jpdc.2024.104917191(104917)Online publication date: Sep-2024
  • (2023)CRFTL: Cache Reallocation-Based Page-Level Flash Translation Layer for SmartphonesIEEE Transactions on Consumer Electronics10.1109/TCE.2023.326421769:3(671-679)Online publication date: 1-Aug-2023
  • (2022)URM: A Unified RAM Management Scheme for NAND Flash Storage DevicesDiscrete Dynamics in Nature and Society10.1155/2022/33769042022:1Online publication date: 31-May-2022
  • (2022)Dual Locality-Based Flash Translation Layer for NAND Flash-Based Consumer ElectronicsIEEE Transactions on Consumer Electronics10.1109/TCE.2022.318976168:3(281-290)Online publication date: Aug-2022
  • (2022)HCFTL: A Locality-Aware Flash Translation Layer for Efficient Address TranslationIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.311214241:8(2477-2489)Online publication date: Aug-2022
  • (2021)DEPS: Exploiting a Dynamic Error Prechecking Scheme to Improve the Read Performance of SSDIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2020.299426640:1(66-77)Online publication date: Jan-2021
  • (2020)GFTL: Group-Level Mapping in Flash Translation Layer to Provide Efficient Address Translation for NAND Flash-Based SSDsIEEE Transactions on Consumer Electronics10.1109/TCE.2020.299121366:3(242-250)Online publication date: Aug-2020
  • (2019)DPW-LRU: An Efficient Buffer Management Policy Based on Dynamic Page Weight for Flash Memory in Cyber-Physical SystemsIEEE Access10.1109/ACCESS.2019.29142317(58810-58821)Online publication date: 2019
  • (2018)OSPADA: One-Shot Programming Aware Data Allocation Policy to Improve 3D NAND Flash Read Performance2018 IEEE 36th International Conference on Computer Design (ICCD)10.1109/ICCD.2018.00018(51-58)Online publication date: Oct-2018

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media