skip to main content
10.1145/2851613.2851739acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Improving I/O performance of NVMe SSD on virtual machines

Published:04 April 2016Publication History

ABSTRACT

The ever increasing demand of effective resource utilization in data centers has resulted in the dramatic development of various virtualization environments. Furthermore, the requirements on rapid processing of large data has not only caused to the replacement of spinning disks with flash-based SSD but also has led to the implementation of efficient software I/O stacks for SSDs. The software I/O stacks in most hypervisors have been developed for SATA interface-based storages. Therefore, high throughput and various functionalities provided by the NVMebased SSDs cannot be fully utilized. Also, it was found that the inefficiency of the existing storage I/O is due to the nonoptimized I/O stack of virtual machines in a hypervisor. In this paper, we have proposed a new I/O architecture that optimizes the I/O path by eliminating the overhead of user-level threads, bypassing unnecessary I/O routines and enhancing the interrupt delivery delay. The purpose of the proposed architecture is to enhance the throughput and scalability by mitigating the overhead of the existing software stack to take full advantage of NVMe SSDs. Experimental results with a real system show that the proposed approach improves the I/O performance by up to 47% compared to the existing approach.

References

  1. VMware homepage. 2015. http://www.vmware.comGoogle ScholarGoogle Scholar
  2. Kivity, A., Kamay, Y., Laor, D., Lublin, U., and Liguori, A. KVM: the Linux virtual machine monitor. In Proceedings of the Linux Symposium (Ottawa, Ontario, Canada, June 2007). 225--230.Google ScholarGoogle Scholar
  3. Xen Project Software Overview. 2015. http://wiki.xen.org/wiki/Xen_Overview.Google ScholarGoogle Scholar
  4. Dong, Y., Yu, Z., and Rose, G. SR-IOV Networking in Xen: Architecture, Design and Implementation. In Workshop on I/O Virtualization (WIOV '08) (San Diego, CA., Dec. 10-11, 2008). Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. AMD I/O virtualization technology (IOMMU) specification. 2011. http://developer.amd.com/wordpress/media/2012/10/488821.pdfGoogle ScholarGoogle Scholar
  6. Russell, R. virtio: towards a de-facto standard for virtual I/O devices. ACM SIGOPS Operating Systems Review, 42, 5 (July 2008), 95--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. NVM Express specification. 2015. http://www.nvmexpress.org/specifications/Google ScholarGoogle Scholar
  8. Bjørling, M., Axboe, J., Nellans, D., and Bonnet, P. Linux block IO: introducing multi-queue SSD access on multi-core systems. In Proceedings of the 6th International Systems and Storage Conference (SYSTOR '13) (Haifa, Israel, June 30-July 2). ACM Press, New York, NY, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Huynh, K. Exploiting the latest KVM features for optimized virtualized enterprise storage performance. In CloudOpen, North America (2013).Google ScholarGoogle Scholar
  10. Lei, M., Virtio-blk Multi-queue Conversion and QEMU Optimization. In KVM Forum (Düsseldorf, Germany, Oct. 14-16, 2014). http://events.linuxfoundation.org/sites/events/files/slides/virti o-blk_qemu_v0.96.pdfGoogle ScholarGoogle Scholar
  11. Kim, T. Y., Kang, D. H., Lee, D. W., and Eom, Y. I. Improving performance by bridging the semantic gap between multi-queue SSD and I/O virtualization framework. In Proceedings of 31st Symposium on Mass Storage Systems and Technologies (MSST '15) (Santa Clara, CA, May 30-June 5, 2015), IEEE, 2015, 1--11.Google ScholarGoogle ScholarCross RefCross Ref
  12. Gordon, A., Har'El, N., Landau, A., Ben-Yehuda, M., and Traeger, A. Towards exitless and efficient paravirtual I/O. In Proceedings of the 5th Annual International Systems and Storage Conference (SYSTOR '12) (Haifa, Israel, June 4-6, 2012). ACM Press, New York, NY, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Oh, M., Eom, H., and Yeom, H. Y. Enhancing the I/O system for virtual machines using high performance SSDs. In Performance Computing and Communications Conference (IPCCC), 2014 IEEE International (Austin, TX, Dec. 5-7, 2014). IEEE, 1--8.Google ScholarGoogle ScholarCross RefCross Ref
  14. Cobb, D., and Huffman, A. Nvm express and the pci express ssd revolution. 2012. http://nvmexpress.org/wp-content/uploads/2013/04/IDF-2012-NVM-Express-and-the-PCIExpress-SSD-Revolution.pdf.Google ScholarGoogle Scholar
  15. Bellard, F. QEMU, a Fast and Portable Dynamic Translator. In Proceedings of the annual conference on USENIX Annual Technical Conference (ATEC '05) (Anaheim, CA, April 10-15, 2005). USENIX Association, Berkeley, CA, USA, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Axboe, J. Flexible IO Tester. 2015. http://git.kernel.dk/?p=fio.git;a=summaryGoogle ScholarGoogle Scholar
  17. Kernel Asynchronous I/O. 2015. http://lse.sourceforge.net/io/aio.htmlGoogle ScholarGoogle Scholar
  18. Nakajima, J. Enabling Optimized Interrupt/APIC Virtualization in KVM. In KVM Forum 2012 (Barcelona, Spain, November 7-9, 2012). http://www.linuxkvm.org/images/7/70/2012-forum-nakajima_apicv.pdfGoogle ScholarGoogle Scholar

Index Terms

  1. Improving I/O performance of NVMe SSD on virtual machines

        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
        • Published in

          cover image ACM Conferences
          SAC '16: Proceedings of the 31st Annual ACM Symposium on Applied Computing
          April 2016
          2360 pages
          ISBN:9781450337397
          DOI:10.1145/2851613

          Copyright © 2016 ACM

          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: 4 April 2016

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          SAC '16 Paper Acceptance Rate252of1,047submissions,24%Overall Acceptance Rate1,650of6,669submissions,25%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader