skip to main content
research-article
Public Access

hfplayer: Scalable Replay for Intensive Block I/O Workloads

Published:15 December 2017Publication History
Skip Abstract Section

Abstract

We introduce new methods to replay intensive block I/O workloads more accurately. These methods can be used to reproduce realistic workloads for benchmarking, performance validation, and tuning of a high-performance block storage device/system. In this article, we study several sources in the stock operating system that introduce uncertainty in the workload replay. Based on the remedies of these findings, we design and develop a new replay tool called hfplayer that replays intensive block I/O workloads in a similar unscaled environment with more accuracy. To replay a given workload trace in a scaled environment with faster storage or host server, the dependency between I/O requests becomes crucial since the timing and ordering of I/O requests is expected to change according to these dependencies. Therefore, we propose a heuristic way of speculating I/O dependencies in a block I/O trace. Using the generated dependency graph, hfplayer tries to propagate I/O related performance gains appropriately along the I/O dependency chains and mimics the original application behavior when it executes in a scaled environment with slower or faster storage system and servers. We evaluate hfplayer with a wide range of workloads using several accuracy metrics and find that it produces better accuracy when compared to other replay approaches.

References

  1. Percona. 2012. Replaying Database Load With Percona Playback. Retrieved October 16, 2017, from http://www.percona.com/blog/2012/10/25/replaying-database-load-with-percona-playback/.Google ScholarGoogle Scholar
  2. Spinics.net. 2014. Re: fio replay. Retrieved October 16, 2017, from http://www.spinics.net/lists/fio/msg02817.html.Google ScholarGoogle Scholar
  3. HammerDB. 2017. Home Page. Retrieved October 16, 2017, from http://www.hammerdb.com.Google ScholarGoogle Scholar
  4. SPDK. 2017. Storage Performance Development Kit. Retrieved October 16, 2017, from http://www.spdk.io.Google ScholarGoogle Scholar
  5. Alireza Haghdoost. 2017. Linux Bug Fix Patch: Enable Sysfs Nomerge Control for I/O Requests in the Plug List. Retrieved October 16, 2017, from https://lkml.org/lkml/2013/10/22/541.Google ScholarGoogle Scholar
  6. Percona. 2017. Download Percona Lab Query Playback. Retrieved October 16, 2017, from http://www.percona.com/doc/percona-playback.Google ScholarGoogle Scholar
  7. SNIA. 2017. IOTTA Repository Home. Retrieved October 16, 2017, from http://iotta.snia.org.Google ScholarGoogle Scholar
  8. Storage Performance Council. 2017. SPC-1 Benchmark Results for Top 10 Block Storage by Price-Performance. Available at http://www.storageperformance.org.Google ScholarGoogle Scholar
  9. Eric Anderson. 2008. Buttress, a cautionary tale. In Proceedings of the 2008 File and Storage Systems Benchmarking Workshop.Google ScholarGoogle Scholar
  10. Eric Anderson, Mahesh Kallahalla, Mustafa Uysal, and Ram Swaminathan. 2004. Buttress: A toolkit for flexible and high fidelity I/O benchmarking. In Proceedings of the 3rd USENIX Conference on File and Storage Technologies. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Matias Bjørling, Jens Axboe, David Nellans, and Philippe Bonnet. 2013. Linux block IO: Introducing multi-queue SSD access on multi-core systems. In Proceedings of the 6th International Systems and Storage Conference. ACM, New York, NY, 22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Dimitri Bourilkov, Paul Ralph Avery, Yu Fu, Craig Prescott, and Bockjoo Kim. The lustre filesystem for petabyte storage at the Florida HPC center. In Proceedings of the HEPiX Fall 2014 Workshop.Google ScholarGoogle Scholar
  13. Alan D. Brunelle. 2011. Btrecord and btreplay user guide. Retrieved October 16, 2017, from http://www.fis.unipr.it/doc/blktrace-1.0.1/btreplay.pdf.Google ScholarGoogle Scholar
  14. Alireza Haghdoost, Weiping He, Jerry Fredin, and David H. C. Du. 2017. On the accuracy and scalability of intensive I/O workload replay. In Proceedings of the 15th USENIX Conference on File and Storage Technologies (FAST’17). 315--328. https://www.usenix.org/conference/fast17/technical-sessions/presentation/haghdoost. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Nikolai Joukov, Timothy Wong, and Erez Zadok. 2005. Accurate and efficient replaying of file system traces. In Proceedings of the 4th USENIX Conference on File and Storage Technologies (FAST’05), Vol. 4. 25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Zhuo Liu, Fei Wu, Xiao Qin, Changsheng Xie, Jian Zhou, and Jianzong Wang. 2010. TRACER: A trace replay tool to evaluate energy-efficiency of mass storage systems. In Proceedings of the 2010 IEEE International Conference on Cluster Computing. 68--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Michael P. Mesnier, Matthew Wachs, Raja R. Simbasivan, Julio Lopez, James Hendricks, Gregory R. Ganger, and David R. O’Hallaron. 2007. //Trace: Parallel trace replay with approximate causal events. In Proceedings of the 5th USENIX Conference on File and Storage Technologies (FAST’07). 24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Al Morton, Len Ciavattone, Gomathi Ramachandran, Stanislav Shalunov, and Jerry Perser. 2006. Packet Reordering Metrics. IETF Internet-standard: RFC4737.Google ScholarGoogle Scholar
  19. Thiago Emmanuel Pereira, Francisco Brasileiro, and Lívia Sampaio. 2016. File system trace replay methods through the lens of metrology. In Proceedings of the 32nd International Conference on Massive Storage Systems and Technology (MSST’16).Google ScholarGoogle ScholarCross RefCross Ref
  20. Bianca Schroeder, Adam Wierman, and Mor Harchol-Balter. 2006. Open versus closed: A cautionary tale. In Proceedings of the 3rd Conference on Networked Systems Design and Implementation (NSDI’06), Vol. 6. 18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Thomas Schbel-Theuer. 2012. blkreplay and Sonar Diagrams. Available at http://www.blkreplay.org.Google ScholarGoogle Scholar
  22. Sankaran Sivathanu, Jinpyo Kim, Devaki Kulkarni, and Ling Liu. 2011. Load-aware replay of I/O traces. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11), Work in Progress (WiP) Session.Google ScholarGoogle Scholar
  23. Storage Networking Industry Association (SNIA). 2010. Block I/O trace common semantics. Working draft.Google ScholarGoogle Scholar
  24. Vasily Tarasov. 2013. Multi-Dimensional Workload Analysis and Synthesis for Modern Storage Systems. Ph.D. Dissertation. Stony Brook University. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Vasily Tarasov, Santhosh Kumar, Jack Ma, Dean Hildebrand, Anna Povzner, Geoff Kuenning, and Erez Zadok. 2012. Extracting flexible, replayable models from large block traces. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). 22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Vasily Tarasov, Santhosh Kumar, Jack Ma, Dean Hildebrand, Anna Povzner, Geoff Kuenning, and Erez Zadok. 2012. Extracting flexible, replayable models from large block traces. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12), Vol. 12. 22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Vasily Tarasov, Erez Zadok, and Spencer Shepler. 2016. Filebench: A flexible framework for file system benchmarking. The USENIX Magazine 41, 1, 6--12.Google ScholarGoogle Scholar
  28. Mojtaba Tarihi, Hossein Asadi, and Hamid Sarbazi-Azad. 2015. DiskAccel: Accelerating disk-based experiments by representative sampling. ACM SIGMETRICS Performance Evaluation Review 43, 1, 297--308. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Avishay Traeger, Erez Zadok, Nikolai Joukov, and Charles P. Wright. 2008. A nine year study of file system and storage benchmarking. ACM Transactions on Storage 4, 2, 5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. R. Weber. 2005. SCSI architecture model-3 (SAM-3). ANSI INCITS 402.Google ScholarGoogle Scholar
  31. Zev Weiss, Tyler Harter, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2013. ROOT: Replaying multithreaded traces with resource-oriented ordering. In Proceedings of the 24th ACM Symposium on Operating Systems Principles (SOSP’13). ACM, New York, NY, 373--387. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Ningning Zhu, Jiawu Chen, Tzi-Cker Chiueh, and Daniel Ellard. 2005. TBBT: Scalable and accurate trace replay for file server evaluation. ACM SIGMETRICS Performance Evaluation Review 33, 392--393. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. hfplayer: Scalable Replay for Intensive Block I/O Workloads

    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 ACM Transactions on Storage
      ACM Transactions on Storage  Volume 13, Issue 4
      Special Issue on MSST 2017 and Regular Papers
      November 2017
      329 pages
      ISSN:1553-3077
      EISSN:1553-3093
      DOI:10.1145/3160863
      • Editor:
      • Sam H. Noh
      Issue’s Table of Contents

      Copyright © 2017 ACM

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 15 December 2017
      • Revised: 1 September 2017
      • Accepted: 1 September 2017
      • Received: 1 June 2017
      Published in tos Volume 13, Issue 4

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!