Abstract
Solid-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 drives. SSDs achieve these desirable characteristics using internal parallelism-parallel access to multiple internal flash memory chips-and a Flash Translation Layer (FTL) that determines where data are stored on those chips so that they do not wear out prematurely. However, current state-of-the-art cache-based FTLs like the Demand-based Flash Translation Layer (DFTL) donot allow IO schedulers to take full advantage of internal parallelism, because they impose a tight coupling between the logical-to-physical address translation and the data access. To address this limitation, we introduce a new FTL design called Parallel-DFTL that works with the DFTL to decouple address translation operations from data accesses. Parallel-DFTL separates address translation and data access operations into different queues, allowing the SSD to use concurrent flash accesses for both types of operations. We also present a Parallel-LRU cache replacement algorithm to improve the concurrency of address translation operations. To compare Parallel-DFTL against existing FTL approaches, we present a Parallel-DFTL performance model and compare its predictions against those for DFTL and an ideal page-mapping approach. We also implemented the Parallel-DFTL approach in an SSD simulator using real device parameters, and used trace-driven simulation to evaluate Parallel-DFTL's efficacy. Our evaluation results show that Parallel-DFTL improved the overall performance by up to 32% for the real IO workloads we tested, and by up to two orders of magnitude with synthetic test workloads. We also found that Parallel-DFTL is able to achieve reasonable performance with a very small cache size and that it provides the best benefit for those workloads with large request size or with high write ratio.
Original language | English |
---|---|
Article number | 32 |
Journal | ACM Transactions on Storage |
Volume | 14 |
Issue number | 4 |
DOIs | |
State | Published - Dec 2018 |
Funding
This material is based on work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research. This research is supported by the National Science Foundation under grant CNS-1162488, CNS-1338078, IIP-1362134, CCF-1409946, and CCF-1718336. This manuscript has been authored by UT-Battelle, LLC under Contract No. DE-AC05-00OR22725 with the U.S. Department of Energy. The United States Government retains and the publisher, by accepting the article for publication, acknowledges that the United States Government retains a non-exclusive, paid-up, irrevocable, world-wide license to publish or reproduce the published form of this manuscript, or allow others to do so, for United States Government purposes. The Department of Energy will provide public access to these results of federally sponsored research in accordance with the DOE Public Access Plan (http://energy.gov/downloads/doe-public-access-plan). Authors’ addresses: W. Xie and Y. Chen, Texas Tech University, 902 Boston Ave, Lubbock, TX 79409; emails: {wei.xie, yong.chen}@ttu.edu; P. C. Roth, One Bethel Valley Road P.O. Box 2008 MS-6173, Oak Ridge, TN 37831-6173, USA; email: [email protected]. 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 the author(s) 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]. © 2018 Association for Computing Machinery. 1553-3077/2018/12-ART32 $15.00 https://doi.org/10.1145/3239564 This material is based on work supported by the U.S. Department of Energy, Office of Science, Office of Advanced Scientific Computing Research. This research is supported by the National Science Foundation under grant CNS-1162488, CNS-1338078, IIP-1362134, CCF-1409946, and CCF-1718336.
Funders | Funder number |
---|---|
National Science Foundation | DE-AC05-00OR22725, CCF-1409946, CNS-1338078, CCF-1718336, CNS-1162488, IIP-1362134 |
U.S. Department of Energy | |
Office of Science | |
Advanced Scientific Computing Research | |
National Science Foundation |
Keywords
- Address translation
- DFTL
- Flash translation layer
- Parallelism
- SSD