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.
- 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).Google Scholar
- 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). Google Scholar
Digital Library
- Ken Bates and Bruce McNutt. 2013. Traces from UMass Trace Repository. Retrieved from http://traces.cs.umass.edu/index.php/Storage/Storage.Google Scholar
- 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).Google Scholar
Digital Library
- 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. Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- Peter Desnoyers. 2012. Analytic modeling of SSD write performance. In Proceedings of the 5th ACM Annual International Systems and Storage Conference (SYSTOR’12). Google Scholar
Digital Library
- Eran Gal and Sivan Toledo. 2005. Algorithms and data structures for flash memories. ACM Computing Surveys (CSUR) 37, 2 (June 2005), 138--163. Google Scholar
Digital Library
- 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.Google Scholar
- Jim Gray and Bob Fitzgerald. 2008. Flash disk opportunity for server applications. Queue - Enterprise Flash Storage 6, 4 (July 2008), 18--23.Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- 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. Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- 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).Google Scholar
Digital Library
- 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). Google Scholar
Cross Ref
- 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). Google Scholar
Digital Library
- 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.Google Scholar
Digital Library
- 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. Google Scholar
Digital Library
- 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).Google Scholar
Digital Library
- 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).Google Scholar
- 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).Google Scholar
Digital Library
- 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. Google Scholar
Digital Library
- 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).Google Scholar
Digital Library
- Microsoft. 2013. MSR Cambridge Traces. Retrieved from http://iotta.snia.org/traces/388.Google Scholar
- 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).Google Scholar
Digital Library
- 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).Google Scholar
- 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). Google Scholar
Cross Ref
- 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).Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- Samsung. 2014. SSD 840 EVO 2.5” SATA III 1TB. Retrieved from http://www.samsung.com/us/computer/memory-storage/MZ-7TE1T0BW.Google Scholar
- 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).Google Scholar
- Kristian Vättö. 2013. LSI Announces SandForce SF3700: SATA and PCIe in One Silicon. Retrieved from http://www.anandtech.com/show/7520/.Google Scholar
- 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. Google Scholar
Cross Ref
- 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).Google Scholar
- 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).Google Scholar
Digital Library
- 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). Google Scholar
Digital Library
- 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). Google Scholar
Cross Ref
- 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). Google Scholar
Cross Ref
- 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). Google Scholar
Digital Library
Index Terms
Understanding and Alleviating the Impact of the Flash Address Translation on Solid State Devices
Recommendations
Exploiting Internal Parallelism for Address Translation in Solid-State Drives
Special Section on Systor 2017 and Regular PapersSolid-state Drives (SSDs) have changed the landscape of storage systems and present a promising storage solution for data-intensive applications due to their low latency, high bandwidth, and low power consumption compared to traditional hard disk ...
A self-tuning hybrid flash translation layer for embedded systems
CompSysTech '11: Proceedings of the 12th International Conference on Computer Systems and TechnologiesThe paper represents an approach for designing and implementing a hybrid variant of a flash translation layer. The two classic realizations are the page-mapping FTL and the block-mapping FTL. The page-mapping FTL keeps an address table referring each ...
A superblock-based flash translation layer for NAND flash memory
EMSOFT '06: Proceedings of the 6th ACM & IEEE International conference on Embedded softwareIn NAND flash-based storage systems, an intermediate software layer called a flash translation layer (FTL)is usually employed to hide the erase-before-write characteristics of NAND flash memory. This paper proposes a novel superblockbased FTL scheme, ...






Comments