skip to main content
research-article
Free Access

Offline and Online Algorithms for SSD Management

Authors Info & Claims
Published:22 June 2023Publication History
Skip Abstract Section

Abstract

Flash-based solid-state drives (SSDs) are a key component in most computer systems, thanks to their ability to support parallel I/O at sub-millisecond latency and consistently high throughput. At the same time, due to the limitations of the flash media, they perform writes out-of-place, often incurring a high internal overhead which is referred to as write amplification. Minimizing this overhead has been the focus of numerous studies by the systems research community for more than two decades. The abundance of system-level optimizations for reducing SSD write amplification, which is typically based on experimental evaluation, stands in stark contrast to the lack of theoretical algorithmic results in this problem domain. To bridge this gap, we explore the problem of reducing write amplification from an algorithmic perspective, considering it in both offline and online settings. In the offline setting, we present a near-optimal algorithm. In the online setting, we first consider algorithms that have no prior knowledge about the input and show that in this case, the greedy algorithm is optimal. Then, we design an online algorithm that uses predictions about the input. We show that when predictions are relatively accurate, our algorithm significantly improves over the greedy algorithm. We complement our theoretical findings with an empirical evaluation of our algorithms, comparing them with the state-of-the-art scheme. The results confirm that our algorithms exhibit an improved performance for a wide range of input traces.

References

  1. Agarwal, R., Marrow, M. A closed-form expression for write amplification in NAND flash. In 2010 IEEE Globecom Workshops (2010), IEEE, Miami, FL, USA, 1846--1850.Google ScholarGoogle Scholar
  2. Bux, W., Iliadis, I. Performance of greedy garbage collection in flash-based solid-state drives. Perform. Eval. 67, 11 (Nov. 2010), 1172--1186.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chakraborttii, C., Litz, H. Reducing write amplification in flash by death-time prediction of logical block addresses. In Proceedings of the 14th ACM International Conference on Systems and Storage (2021), ACM, Haifa, Israel.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Desnoyers, P. Analytic models of SSD write performance. ACM Trans. Storage 10, 2 (Mar. 2014) 1--25.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Diwan, A., Pal, S., Ranade, A. Fragmented coloring of proper interval and split graphs. Discrete Appl. Math. 193 (2015), 110--118.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. He, J., Kannan, S., Arpaci-Dusseau, A.C., Arpaci-Dusseau, R.H. The unwritten contract of solid state drives. In Proceedings of the 12th European Conference on Computer Systems (EuroSys'17) (2017), ACM, NY, 127--144.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Hsieh, J.-W., Kuo, T.-W., Chang, L.-P. Efficient identification of hot data for flash memory storage systems. ACM Trans. Storage 2, 1 (Feb. 2006), 22--40.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Lykouris, T., Vassilvitskii, S. Competitive caching with machine learned advice. In Proceedings of the 35th International Conference on Machine Learning, ICML 2018, Stockholmsmässan, Stockholm, Sweden, July 10--15, 2018, volume 80 of Proceedings of Machine Learning Research (2018), PMLR, Stockholm, Sweden, 3302--3311.Google ScholarGoogle Scholar
  9. Mitzenmacher, M., Vassilvitskii, S. Algorithms with predictions. In Beyond the Worst-Case Analysis of Algorithms. T. Roughgarden, ed. Cambridge University Press, Cambridge, UK, 2020, 646--662.Google ScholarGoogle ScholarCross RefCross Ref
  10. Narayanan, D., Donnelly, A., Rowstron, A. Write off-loading: Practical power management for enterprise storage. ACM Trans. Storage 4, 3 (Nov. 2008), 1--23.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Park, D., Du, D.H. Hot data identification for flash-based storage systems using multiple Bloom filters. In 27th IEEE Symposium on Mass Storage Systems and Technologies (MSST) (2011) IEEE, Denver, CO, USA.Google ScholarGoogle Scholar
  12. Purohit, M., Svitkina, Z., Kumar, R. Improving online algorithms via ML predictions. In Advances in Neural Information Processing Systems 31: Annual Conference on Neural Information Processing Systems 2018, NeurIPS 2018 (December 3--8, 2018, Montrèal, Canada) (2018), Curran Associates, Inc., Montreal, Canada, 9684--9693.Google ScholarGoogle Scholar
  13. SNIA IOTTA Trace Repository. MSR Cambridge Traces, 2007. http://iotta.snia.org/traces/block-io/388.Google ScholarGoogle Scholar
  14. Yadgar, G., Gabel, M., Jaffer, S., Schroeder, B. SSD-based workload characteristics and their performance implications. ACM Trans. Storage 17, 1 (Jan. 2021) 1--26.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Yang, Y., Misra, V., Rubenstein, D. On the optimality of greedy garbage collection for SSDs. SIGMETRICS Perform. Eval. Rev. 43, 2 (Sept. 2015), 63--65.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Yao, A.C.-C. Probabilistic computations: Toward a unified measure of complexity. In 18th Annual Symposium on Foundations of Computer Science (SFCS) (1977), IEEE, Los Alamitos, CA, USA, 222--227.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Offline and Online Algorithms for SSD Management

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image Communications of the ACM
        Communications of the ACM  Volume 66, Issue 7
        July 2023
        126 pages
        ISSN:0001-0782
        EISSN:1557-7317
        DOI:10.1145/3605915
        • Editor:
        • James Larus
        Issue’s Table of Contents

        Copyright © 2023 Owner/Author

        Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 22 June 2023

        Check for updates

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)515
        • Downloads (Last 6 weeks)63

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format