• DocumentCode
    1679495
  • Title

    Improving performance by bridging the semantic gap between multi-queue SSD and I/O virtualization framework

  • Author

    Tae Yong Kim ; Dong Hyun Kang ; Dongwoo Lee ; Young Ik Eom

  • Author_Institution
    Coll. of Inf. & Commun. Eng., Sungkyunkwan Univ., Suwon, South Korea
  • fYear
    2015
  • Firstpage
    1
  • Lastpage
    11
  • Abstract
    Virtualization has become one of the most helpful techniques, and today it is prevalent in several computing environments including desktops, data-centers, and enterprises. However, an I/O scalability issue in virtualized environments still needs to be addressed because I/O layers are implemented to be oblivious to the I/O behaviors on virtual machines (VM). In particular, when a multi-queue solid state drive (SSD) is used as a secondary storage, each VM reveals semantic gap that degrades the overall performance of the VM by up to 74%. This is due to two key problems. First, the multi-queue SSD accelerates the possibility of lock contentions. Second, even though both the host machine and the multi-queue SSD provide multiple I/O queues for I/O parallelism, existing Virtio-Blk-Data-Plane supports only one I/O queue by an I/O thread for submitting all I/O requests. In this paper, we propose a novel approach, including the design of virtual CPU (vCPU)-dedicated queues and I/O threads, which efficiently distributes the lock contentions and addresses the parallelism issue of Virtio-Blk-Data-Plane in virtualized environments. We design our approach based on the above principle, which allocates a dedicated queue and an I/O thread for each vCPU to reduce the semantic gap. We also implement our approach based on Linux 3.17, and modify both the Virtio-Blk frontend driver of guest OS and the Virtio-Blk backend driver of Quick Emulator (QEMU) 2.1.2. Our experimental results with various I/O traces clearly show that our design improves the I/O operations per second (IOPS) in virtualized environments by up to 167% over existing QEMU.
  • Keywords
    Linux; random-access storage; virtual machines; virtualisation; I/O parallelism; I/O scalability issue; I/O virtualization framework; Linux 3.17; QEMU; guest OS; input-output virtualization; lock contention; multiqueue SSD; multiqueue solid state drive; operating systems; quick emulator; semantic gap; virtio-blk-data-plane; virtual CPU; virtual machines; virtualized environment; Computer architecture; Hardware; Nonvolatile memory; Optimization; Parallel processing; Software; Virtualization; lock contention; multi-queue; non-volatile memory express; parallelism; quick emulator; solid state drive; virtualization;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Mass Storage Systems and Technologies (MSST), 2015 31st Symposium on
  • Conference_Location
    Santa Clara, CA
  • Type

    conf

  • DOI
    10.1109/MSST.2015.7208295
  • Filename
    7208295