KVM Virtualized I/O Performance



Similar documents
Exploiting The Latest KVM Features For Optimized Virtualized Enterprise Storage Performance

8Gb Fibre Channel Adapter of Choice in Microsoft Hyper-V Environments

Removing Performance Bottlenecks in Databases with Red Hat Enterprise Linux and Violin Memory Flash Storage Arrays. Red Hat Performance Engineering

Oracle Database Scalability in VMware ESX VMware ESX 3.5

SUSE Linux Enterprise 10 SP2: Virtualization Technology Support

KVM KERNEL BASED VIRTUAL MACHINE

White Paper. Recording Server Virtualization

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

Scaling Microsoft Exchange in a Red Hat Enterprise Virtualization Environment

Performance and scalability of a large OLTP workload

2972 Linux Options and Best Practices for Scaleup Virtualization

Performance Characteristics of VMFS and RDM VMware ESX Server 3.0.1

DIABLO TECHNOLOGIES MEMORY CHANNEL STORAGE AND VMWARE VIRTUAL SAN : VDI ACCELERATION

Virtualization Performance on SGI UV 2000 using Red Hat Enterprise Linux 6.3 KVM

How To Connect Virtual Fibre Channel To A Virtual Box On A Hyperv Virtual Machine

Developing a dynamic, real-time IT infrastructure with Red Hat integrated virtualization

Broadcom Ethernet Network Controller Enhanced Virtualization Functionality

Doubling the I/O Performance of VMware vsphere 4.1

SQL Server Virtualization

HP SN1000E 16 Gb Fibre Channel HBA Evaluation

How To Evaluate Netapp Ethernet Storage System For A Test Drive

Virtualization Performance Analysis November 2010 Effect of SR-IOV Support in Red Hat KVM on Network Performance in Virtualized Environments

Enabling Technologies for Distributed and Cloud Computing

Enabling Technologies for Distributed Computing

QLogic 16Gb Gen 5 Fibre Channel in IBM System x Deployments

RED HAT ENTERPRISE VIRTUALIZATION FOR SERVERS: COMPETITIVE FEATURES

FOR SERVERS 2.2: FEATURE matrix

Enterprise-Class Virtualization with Open Source Technologies

IOmark- VDI. Nimbus Data Gemini Test Report: VDI a Test Report Date: 6, September

Dell Virtualization Solution for Microsoft SQL Server 2012 using PowerEdge R820

How to Configure Intel Ethernet Converged Network Adapter-Enabled Virtual Functions on VMware* ESXi* 5.1

MS Exchange Server Acceleration

RED HAT ENTERPRISE VIRTUALIZATION PERFORMANCE: SPECVIRT BENCHMARK

Performance Evaluation of VMXNET3 Virtual Network Device VMware vsphere 4 build

IOS110. Virtualization 5/27/2014 1

Where IT perceptions are reality. Test Report. OCe14000 Performance. Featuring Emulex OCe14102 Network Adapters Emulex XE100 Offload Engine

RED HAT ENTERPRISE VIRTUALIZATION FOR SERVERS: PRICING & LICENSING GUIDE

Demartek June Broadcom FCoE/iSCSI and IP Networking Adapter Evaluation. Introduction. Evaluation Environment

KVM: Kernel-based Virtualization Driver

SAN Conceptual and Design Basics

Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011

Technical Paper. Moving SAS Applications from a Physical to a Virtual VMware Environment

Full and Para Virtualization

Red Hat enterprise virtualization 3.0 feature comparison

KVM Virtualization Roadmap and Technology Update

Marvell DragonFly Virtual Storage Accelerator Performance Benchmarks

I/O Virtualization Using Mellanox InfiniBand And Channel I/O Virtualization (CIOV) Technology

Unleash the Performance of vsphere 5.1 with 16Gb Fibre Channel

REFERENCE ARCHITECTURE. PernixData FVP Software and Splunk Enterprise

Brocade and EMC Solution for Microsoft Hyper-V and SharePoint Clusters

Using VMware VMotion with Oracle Database and EMC CLARiiON Storage Systems

Accelerating Microsoft Exchange Servers with I/O Caching

Servervirualisierung mit Citrix XenServer

Beyond the Hypervisor

The HBAs tested in this report are the Brocade 825 and the Emulex LPe12002 and LPe12000.

Configuration Maximums VMware Infrastructure 3

EMC Unified Storage for Microsoft SQL Server 2008

Scaling in a Hypervisor Environment

Vertical Scaling of Oracle 10g Performance on Red Hat Enterprise Linux 5 on Intel Xeon Based Servers. Version 1.0

VBLOCK SOLUTION FOR SAP: SAP APPLICATION AND DATABASE PERFORMANCE IN PHYSICAL AND VIRTUAL ENVIRONMENTS

HP ProLiant BL685c takes #1 Windows performance on Siebel CRM Release 8.0 Benchmark Industry Applications

Performance Comparison of Fujitsu PRIMERGY and PRIMEPOWER Servers

IBM XIV Gen3 Storage System Storage built for VMware vsphere infrastructures

RUNNING vtvax FOR WINDOWS

The 8Gb Fibre Channel Adapter of Choice in Oracle Environments

Performance brief for IBM WebSphere Application Server 7.0 with VMware ESX 4.0 on HP ProLiant DL380 G6 server

Microsoft System Center 2012 SP1 Virtual Machine Manager with Storwize family products. IBM Systems and Technology Group ISV Enablement January 2014

Version 3.7 Technical Whitepaper

Private cloud computing advances

Windows 8 SMB 2.2 File Sharing Performance

RED HAT ENTERPRISE VIRTUALIZATION

Configuration Maximums

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

Emulex OneConnect 10GbE NICs The Right Solution for NAS Deployments

Performance characterization report for Microsoft Hyper-V R2 on HP StorageWorks P4500 SAN storage

Red Hat Enterprise Virtualization 3 on

QLogic 8Gb FC Single-port and Dual-port HBAs for IBM System x IBM System x at-a-glance guide

Virtual SAN Design and Deployment Guide

Hitachi Virtage Embedded Virtualization Hitachi BladeSymphony 10U

Configuration Maximums VMware vsphere 4.0

Intro to Virtualization

WHITE PAPER 1

Emulex 8Gb Fibre Channel Expansion Card (CIOv) for IBM BladeCenter IBM BladeCenter at-a-glance guide

How System Settings Impact PCIe SSD Performance

Accelerating Network Virtualization Overlays with QLogic Intelligent Ethernet Adapters

Highly-Scalable Virtualization: Optimizing your Infrastructure with IBM ex5 and VMware vsphere

IBM System x and BladeCenter for Oracle s JD Edwards EnterpriseOne

High Performance SQL Server with Storage Center 6.4 All Flash Array

IBM System x family brochure

Masters Project Proposal

Boost Database Performance with the Cisco UCS Storage Accelerator

HP ProLiant BL460c takes #1 performance on Siebel CRM Release 8.0 Benchmark Industry Applications running Linux, Oracle

KVM Architecture Overview

VMware Best Practice and Integration Guide

The virtualization of SAP environments to accommodate standardization and easier management is gaining momentum in data centers.

High Performance MySQL Cluster Cloud Reference Architecture using 16 Gbps Fibre Channel and Solid State Storage Technology

Transcription:

KVM Virtualized I/O Performance Achieving Unprecedented I/O Performance Using Virtio-Blk-Data-Plane Technology Preview in SUSE Linux Enterprise Server 11 Service Pack 3 (SP3) Khoa Huynh, IBM Linux Technology Center Andrew Theurer, IBM Linux Technology Center June 2013 Version 1.3 1

Linux is a registered trademark of Linus Torvalds. SUSE, SUSE Linux Enterprise Server logo are registered trademarks of SUSE Linux Products GmbH. IBM, the IBM logo, ibm.com, ServeRAID, System x, X-Architecture are trademarks of International Business Machines Corporation in the United States, other countries, or both UNIX is a registered trademark of The Open Group. Intel, the Intel logo and Xeon are registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Microsoft, the Microsoft logo, Windows, and Hyper-V are registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. VMware, VMworld, and vsphere are registered trademarks of VMware Corporation or its subsidiaries in the United States and other countries. All other trademarks referenced herein are the property of their respective owners. 2013 by IBM Corp and SUSE Linux Products GmbH. This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, V1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). The information contained herein is subject to change without notice. IBM Corp. or SUSE Linux Products GmbH. shall not be liable for technical or editorial errors or omissions contained herein. Distribution of modified versions of this document is prohibited without the explicit permission of IBM Corp. and SUSE Linux Products GmbH. Distribution of this work or derivative of this work in any standard (paper) book form for commercial purposes is prohibited unless prior permission is obtained from IBM Corp. or SUSE Linux Products GmbH.

Table of Contents Executive Summary... 4 1. Introduction... 5 1.1. The KVM hypervisor... 5 1.2. SUSE Linux Enterprise Server 11 Virtualization... 6 1.3. Technology Preview Virtio-Blk-Data-Plane... 6 1.4. IBM System x Servers... 7 1.5. Motivation... 8 2. Test setup... 9 2.1. Test Hardware... 9 2.2. Workload... 9 2.3. KVM Configuration... 10 3. Results... 12 Summary... 15 References... 16 313

Executive Summary The Kernel-based Virtual Machine (KVM) hypervisor has earned a reputation as the highest performing hypervisor in virtualization benchmarks, holding the top seven results in SPECvirt_sc2010 [1] and recently achieving leadership results on SAP's 2-tier SD benchmark [2] and TPC-C benchmark [3]. One of the key ingredients to this success is KVM's ability to handle the high I/O rates required by enterprise workloads, such as databases, ERP systems, and low-latency financial trading applications that are running in virtual machines. A new I/O virtualization technology, called virtio-blk-data-plane, allows KVM to handle even higher storage I/O rates. It is available as a Technology Preview in SUSE Linux Enterprise Server 11 Service Pack 3 (SP3). This paper describes a test setup that included an IBM System x3850 X5 host server with QLogic QLE 256x Host Bus Adapters (HBAs) and SUSE Linux Enterprise Server 11 SP3 running on both the host server and a single KVM guest. It also details test results that demonstrate the highest storage I/O performance ever reported for a single virtual machine (guest): 1.37 million I/O operations per second (IOPS) at 8KB I/O request size and more than 1.61 million IOPS at 4KB and smaller request sizes. This achievement is the result of a collaborative effort between IBM's Linux Technology Center's Performance organization and the major Linux distributions. These results show that KVM is ready for the most demanding enterprise workloads.

1. Introduction A hypervisor is an object that manages virtual machines (guests) running on a physical machine (host). It can be a computer program, firmware, or hardware that provides the end user the ability to create, configure, and manage virtual machines that operate as if they were physical machines. 1.1. The KVM hypervisor The Kernel-based Virtual Machine (KVM) project represents the next generation in opensource hypervisors. KVM is fully integrated into the Linux operating system both as a host and a guest. Unlike other hypervisors, KVM makes no distinction between running in either host or hypervisor mode. This duality in design has helped KVM to rapidly mature into a stable, highperforming hypervisor, positioned to outperform other hypervisors available on the market today. The first design principle includes the following: Leverage all hardware-assisted virtualization capabilities provided by Intel Virtualization Technology (VT) and AMD Secure Virtual Machine (SVM) Feature the latest hardware virtualization extensions, including: Hardware nested paging (EPT/NPT) Pause loop exiting and pause filtering I/O off-load features, such as secure PCI pass-through using Intel VT-D or AMD I/O Memory Management Unit (IOMMU) Exploit hardware capabilities while keeping the KVM virtualization overhead to the absolute minimum The second design principle includes the following: Leverage the Linux operating system Fulfill many components required by a hypervisor, such as memory management, scheduler, I/O stack, and device drivers by reusing optimized, off-the-shelf Linux implementations The Linux kernel, with its 20 years of development, is the industry leader in terms of performance and availability. The Linux process scheduler, for example, provides completely fair scheduling (CFS) that is optimized to manage complex workloads and NUMA systems, while offering low latency, high performance determinism, and fine-grained Service Level Agreement (SLA) for applications. By placing the KVM hypervisor directly into the Linux kernel, all of these services and advantages have a direct, positive impact on the hypervisor performance. 515

1.2. SUSE Linux Enterprise Server 11 Virtualization SUSE Linux Enterprise Server is a modular, enterprise-class Linux server operating system, runs on five processor architectures and is suitable for a wide range of mission-critical workloads. It is optimized to run on leading hypervisors and supports an unlimited number of virtual machines (guests) per physical system with a single subscription, making it the perfect guest for virtual computing. Included with SUSE Linux Enterprise Server 11 Service Pack 3 (SP3) are the latest open source virtualization technologies, Xen and KVM. With these hypervisors, SUSE Linux Enterprise Server can be used to provision, de-provision, install, monitor and manage multiple virtual machines (VMs) on a single physical system. SUSE Linux Enterprise Server 11 SP3 with Xen or KVM acts as a virtualization host server (VHS) that supports VMs with their own guest operating systems. The SUSE VM architecture consists of a hypervisor and management components that constitute the VHS, which runs many application-hosting VMs. In KVM, where the Linux kernel acts as the hypervisor, the management components run directly on the VHS. 1.3. Technology Preview Virtio-Blk-Data-Plane SUSE Linux Enterprise Server 11 Service Pack 3 (SP3) introduces, as a Technology Preview, a new I/O virtualization technology for KVM, called virtio-blk-data-plane. It accelerates I/O operations going through the para-virtualized I/O block driver (virtio-blk) with dedicated perdevice threads. This approach, shown in Figure 1, allows the block I/O processing to run concurrently with other device emulation, and therefore, achieves some of the best I/O performance results to date. Device emulation in KVM is provided by the Quick EMUlator (QEMU) running in user space. The key concept of the virtio-blk-data-plane approach is that by isolating the virtio-blk processing into dedicated threads, synchronization with other components can be avoided. Consequently, these dedicated threads, called virtio-blk-data-plane threads, do not need to acquire the global mutex that protects the hardware emulation code in QEMU when they submit guest I/O operations to the host, resulting in higher performance. There is a dedicated virtio-blk-data-plane thread for each block device in the guest. For even better performance, virtio-blk-data-plane also exploits the ioeventfd / irqfd mechanism, which decouples the I/O processing from the guest's execution. The Asynchronous I/O (AIO) support in the host Linux kernel is used by virtio-blk-data-plane to process the actual I/O requests on behalf of the guest. Due to the architectural changes required to move virtio-blk processing to dedicated threads, this technology preview in SUSE Linux Enterprise Server SP3 currently limits some storage features: Only raw image files are currently supported. Storage migration, hot unplug, I/O throttling, image streaming, and drive mirroring are currently not supported. These limitations apply only to virtio-blk-data-plane and not to the existing virtio-blk device emulation.

KVM Guest irqfd ioeventfd QEMU Event Loop Virtio-blkdata-plane thread(s) Linux AIO Host Kernel 1.4. IBM System x Servers Figure 1. Virtio-blk-data-plane IBM System x servers support Microsoft Windows, Linux, and hypervisors. System x servers are intelligent systems, designed to reduce costs and complexity for enterprise workloads. With the introduction of ex5 IBM s fifth-generation industry-leading enterprise X- Architecture servers IBM engineers have redefined x86 servers by expanding their capabilities. A member of the ex5 server family, the x3850 X5 is a scalable 4-socket, 4U, rack-optimized enterprise server that delivers the following benefits to enterprise customers: High memory capacity (up to 3TB, 3 times the memory capacity of other 4-socket x86 servers, using the industry-unique IBM MAX5 memory expansion unit) Processor scalability up to 8 sockets (up to 80 processor cores) by connecting two 4- socket x3850 X5 systems together and doubling all system resources (including up to 6TB of memory, using two MAX5 memory expansion units) The broadest range of network and storage support in the industry for ultimate flexibility and choice Support for IBM exflash solid-state storage technology for extreme storage I/O performance Integrated Emulex 10 GbE Virtual Fabric Adapter with capability for upgrades to Fiber Channel over Ethernet (FCoE) Fifth-generation ex5 chipset design enhancements, built on the latest X-Architecture blueprint 717

Balanced systems for virtualization, database and enterprise workloads Workload-optimized systems with customizable configurations for target workloads Greater performance and utilization at a lower total cost Mainframe-inspired reliability Simplified power and systems management with an energy-smart design and remote access Figure 2 shows the front exterior of the IBM System x3850 X5 server. Figure 2. IBM System x3850 X5 Server 1.5. Motivation IBM customers drive enterprise workloads, such as databases, ERP systems, and lowlatency financial trading applications. In the past, these workloads were seldom virtualized in production due to scaling and time-sensitive barriers, so they were unable to exploit the many benefits of virtualization, such as hardware abstraction, live migration, dynamic resource allocation, and more. Proving that KVM is able to sustain high I/O rates is very critical in enabling the migration of these workloads into the virtualized environment.

2. Test setup 2.1. Test Hardware To demonstrate how KVM can handle extremely high I/O rates, it was necessary to set up a storage back-end that was capable of delivering at least one million I/O operations per second (IOPS). For a diagram of the test environment, refer to Figure 3. The KVM host server was an IBM System x3850 X5 with four Intel Xeon E7-4870 processors and 256 GB of memory. Each E7-4870 processor had 10 cores running at 2.40 GHz. The x3850 X5 server had seven available PCI slots, each of which were fitted with QLogic QLE 256x Host Bus Adapters (HBAs). Each of these adapters had two ports, each supporting full-duplex, 8-Gigabit-per-second data links. Each QLogic HBA in the KVM host was directly connected to a unique Fiber Channel SCSI target server. For more information about the Fiber Channel SCSI target server, see http://linux-iscsi.org. Each SCSI target server had four 15-GB RAM disks configured so that these RAM disks would appear as Logical Unit Numbers (LUNs) at the SCSI host (KVM host server). As a result, from the KVM host s perspective, the storage back-end had a total of 14 (7 PCI slots x 2 ports) PCI devices and 56 (14 PCI devices x 4 RAM disks) storage LUNs. 2.2. Workload The Flexible I/O (FIO) benchmark (http://linux.die.net/man/1/fio) was used to generate disk I/O workloads and measure the resulting I/O rates, throughput, and latency. This workload had the following FIO parameter settings: Direct I/O operations Asynchronous I/O operations (engine = libaio) Random read and write operations (50% reads, 50% writes) I/O request sizes = 512 bytes, 1KB, 2KB, 4KB, 8KB One job per storage LUN Queue depth = 32 Both random read and write operations were included in the workload for two reasons. First, a workload with both random reads and writes would be more realistic and similar to actual enterprise workloads, such as database applications. Secondly, having both reads and writes in the workload allowed the ability to fully exploit the full-duplex data links supported by the QLogic HBAs. A range of I/O request sizes, from 512 bytes to 8KB, was also considered as these are the typical I/O sizes used in many real-world applications. The FIO workload was first run directly on the KVM host server to determine the maximum I/O rates that this test setup could support. These bare-metal results indicated that our storage 919

setup could deliver up to 200,000 IOPS per SCSI target server, or a total of 1.4 million IOPS with all 7 SCSI target servers, using 8KB requests. This was determined to be sufficient for the KVM storage performance testing. Host Server (IBM x3850 X5) KVM Guest (cache=none) FIO Benchmark Random Reads + Writes (50% Split) 42 (Virtual) LUNs 8-Gbps Qlogic Adapters (Dual-Ported) SCSI Target Servers (7) Figure 3. The test setup 2.3. KVM Configuration To achieve the best possible I/O rates for the KVM guest, the virtio-blk-data-plane feature was enabled for each LUN (a disk or partition) that was passed from the host to the guest. To enable virtio-blk-data-plane for a LUN being passed to the guest, the x-data-plane=on option was added for that LUN in the qemu-kvm command line used to set up the guest. For example: qemu-kvm -drive if=none,id=drive0,cache=none,aio=native,format=raw,file=<disk or partition> -device virtio-blk-pci,drive=drive0,scsi=off,x-data-plane=on

After the guest finished booting up, all I/O operations going through the para-virtualized block driver (virtio-blk) would use the fast I/O path enabled by the virtio-blk-data-plane feature for this specific LUN. SUSE Linux Enterprise Server 11 Service Pack 3 (SP3) was used on both host and guest. 11111

3. Results In this test, the goal was to determine the maximum I/O rates that could be sustained with a single KVM guest. A very large guest was configured with 40 virtual CPUs to test this goal. Because our FIO workload was not very memory-intensive, 8GB of memory was configured for the guest. More specifically, the single-guest configuration included the following: Host Server: IBM System x3850 X5 4 Intel Xeon E7-4870 processors (40 cores at 2.40 GHz), 256 GB memory (total) SUSE Enterprise Linux Server 11 SP3 Storage: 7 QLogic QLE 256x (8 Gbps, dual-ported) connected to 7 SCSI target servers 56 LUNs KVM Guest (Virtual Machine): 40 virtual CPUs, 8 GB memory 42 virtual LUNs SUSE Enterprise Linux Server 11 SP3 FIO Workload Random reads and writes (50% reads, 50% writes) 1 job per LUN Direct I/O operations Engine = libaio Queue depth = 32 To optimize the virtualized I/O performance, the following performance tuning steps were done prior to the test runs: Leveraged caching efficiency in the host processors by binding dedicated virtio-blk-dataplane threads to specific CPUs in the host Used deadline I/O scheduler in the host Exploited interrupt-coalescing capability of the QLogic HBAs Disabled entropy random contribution from block devices Disabled all cgroup and CPU delay accounting in both host and guest Switched the clock source in the guest to TSC

Figure 4 shows the number of I/O operations per second (IOPS) and the average latencies for random read and write operations across several I/O request sizes. For a single guest, KVM with virtio-blk-data-plane was able to achieve 1.37 million IOPS using 8KB I/O requests and 1.61 million IOPS using I/O requests that were 4KB or less. These I/O rates were actually limited by the physical bandwidth of our test storage setup. The average latencies for random reads and writes were very consistent up to 4KB I/O size at about 0.7 milliseconds (ms) for reads and 1.0 ms for writes. The average latencies for 8 KB requests were just slightly higher 0.9 ms for reads and 1.1 ms for writes due to larger data transfer times as we approached the physical bandwidth of the test storage setup. This shows that KVM can sustain very high storage performance across all typical I/O sizes. Single KVM Guest SLES11 SP3 with virtio-blk-data-plane FIO Benchmark, Direct Random I/Os (50% Reads, 50% Writes) KVM Host = IBM x3850 X5 (Intel E7-8870@2.4GHz, 40 Cores, 256GB) IOPS Average Read Latency (ms) Average Write Latency (ms) 1,800,000.0 1.20 IOPS 1,600,000.0 1,400,000.0 1,200,000.0 1,000,000.0 800,000.0 600,000.0 400,000.0 200,000.0 1.00 0.80 0.60 0.40 0.20 Average Latency (ms) 0.0 512 B 1 KB 2 KB 4 KB 8 KB I/O Size 0.00 Figure 4. I/O rates and average latencies across multiple I/O request sizes Figure 5 shows how these storage I/O rates compare to the most recent claims for other competing hypervisors. In a recent TechNet Webcast [4], Microsoft announced new benchmark performance results for iscsi using its Hyper-V hypervisor, Windows Server 2008 R2, and Intel Internet Server Adapters. These results indicated that Hyper-V could achieve an aggregate rate of 700,000 IOPS using 10 virtual machines on a single host at 512- byte I/O request size. As the I/O request size increased, the I/O rates dropped to around 13 113

300,000 IOPS at 8KB request size. In a blog just before VMworld 2012 [5], VMware demonstrated that it could sustain almost 1.1 million IOPS using 4KB I/O requests in a single virtual machine running on a vsphere 5.1 host. With virtio-blk-data-plane technology, KVM could achieve more than 1.6 million IOPS for a single guest at the same 4KB I/O request size. This means that KVM with virtio-blk-data-plane could achieve I/O rates that are 52% higher than VMware vsphere 5.1, although these tests used different guest operating systems and hardware setups. It is clear that the virtio-blk-data-plane technology allows KVM to deliver much higher I/O rates than both of its major competing hypervisors. KVM Storage I/O Rates vs. Claims for Competing Hypervisors Direct Random I/Os Across Various Block Size 1,800,000.0 Higher is better I/O Operations Per Second (IOPS) 1,600,000.0 1,400,000.0 1,200,000.0 1,000,000.0 800,000.0 600,000.0 400,000.0 200,000.0 0.0 vsphere 5.1 vsphere 5.0 512 B 1 KB 2 KB 4 KB 8 KB I/O Size SLES11 SP3 KVM w/ virtio-blk-dataplane (Single Guest) Microsoft Hyper-V (Single Host, Multiple Guests) VMware vsphere 5 (Single Guest) Figure 5. I/O rates at different I/O request sizes

Summary Leveraging new silicon capabilities, with tight integration into the Linux kernel, KVM outperforms other competing hypervisor solutions in many aspects. With the virtio-blk-dataplane technology preview for KVM in SUSE Linux Enterprise Server 11 Service Pack 3 (SP3), a single KVM guest can handle up to 1.37 million I/Os per second (IOPS) for 8KB random I/O requests and more than 1.61 million IOPS for smaller requests, approaching the baremetal limit of the test storage setup. These I/O rates are more than 50% higher than the highest claims for VMware vsphere 5.1. The results in this paper have proven that KVM is ready for enterprise workloads that demand extremely high I/O rates, very low latencies, and consistent storage I/O performance. 15 115

References [1] SPECvirt_sc2010 Results Published by SPEC, http://www.spec.org/virt_sc2010/results/specvirt_sc2010_perf.html [2] SAP SD Standard Benchmark Application Results, Two-Tier Internet Configuration, http://www.sap.com/solutions/benchmark/sd2tier.epx [3] First-ever Virtualized x86 TPC-C Result, Two-Socket Configuration, http://www.tpc.org/tpcc/results/tpcc_result_detail.asp?id=113022201 [4] Microsoft TechNet webcast. Maximizing Hyper-V iscsi Performance With Microsoft and Intel. https://msevents.microsoft.com/cui/eventdetail.aspx?culture=en- US&EventID=1032432957&CountryCode=US [5] VMware, Inc. 1 million IOPS on 1 VM, August 27 th, 2012. http://blogs.vmware.com/performance/2012/08/1millioniops-on-1vm.html