<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hello Gulseren,<br>
<br>
First of all, I am liking the results. :)<br>
<br>
Secondly, Windows and other Microsoft services work better on Hyper-V, it's only natural. :) This can explain the stable and higher performance, and lower cpu consumption on Hyper-V.<br>
<br>
I am wondering if we can boost those results even more. For this, I have a couple of questions:<br>
<br>
1. The VM's image, is it a VHD, or a VHDx? VHDx images typically perform better. You can check the format by running this in powershell:<br>
<br>
Get-VHD -Path C:\path\to\disk.<br>
<br>
2. What version of Hyper-V are you using?<br>
<br>
3. Is your VM a Generation 1 VM, or Generation 2? Generation 2 VMs have been introduced in Windows / Hyper-V Server 2012 R2 and some of its features include faster boot times, and less host resource consumption and better VM performance, since it no longer
 has emulated devices. Please do note that the VM image must be specifically created for Generation 2 VMs, you can't attach any image to such a VM and expect it to work. For example, one restriction is that the image must be an VHDx.<br>
<br>
If you got yourself a new Generation 2 VM image, in order to create a Generation 2 VM in OpenStack, you will have to add this property in the image's metadata: hw_machine_type=hyperv-gen2<br>
In CLI, it would be:<br>
<br>
glance image-update image_name --property hw_machine_type=hyperv-gen2<br>
<br>
4. What are the specs of Hyper-V host? And more importantly, how many NUMA nodes does it have? You can find out by running this in powershell:<br>
<br>
Get-VMHostNumaNode<br>
<br>
If you have more than 1 NUMA node and if your Hyper-V Server has little free memory, there are chances that your VM's memory is split across multiple NUMA nodes. Hyper-V does this in order to fit all the VMs in the available memory, but for a performance cost.<br>
By default, NUMA spanning is enabled, but you can disabled it. You will have to restart the vmms service if you do so:<br>
<br>
Restart-Service vmms<br>
<br>
Your VMs will have to be restarted as well. Now, whenever your VMs start, your VMs will not span multiple NUMA nodes. NOTE: if there is a VM that cannot entirely fit in any NUMA node, it will NOT start, even though it could easily fit with NUMA spanning enabled.<br>
<br>
5. All Windows / Hyper-V Servers, as well as guests, have power config options. By default, they are set to "Balanced". You can set it to "High performance" by running this in powershell:<br>
<br>
PowerCfg.exe /S 8C5E7FDA-E8BF-4A96-9A85-A6E23A8C635C<br>
<br>
We've noticed a ~10-15% performance increase after we've done this. Try it, in both the Hyper-V host, and Windows guest.<br>
<br>
<br>
Now, not all of these are going to improve the disk throughput, but they should still improve the general performance.<br>
<br>
Also, just is just a FYI, we've done some performance testing using Rally with some Sahara / Hadoop scenarios. The results seemed to favor Hyper-V over KVM (both single cluster, and multiple cluster scenarios).<br>
<br>
<br>
Best regards,<br>
<br>
Claudiu Belu<br>
<br>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div style="direction: ltr;" id="divRpF196888"><font face="Tahoma" color="#000000" size="2"><b>From:</b> gulseren bulut [glserenbulut@gmail.com]<br>
<b>Sent:</b> Thursday, May 12, 2016 11:14 PM<br>
<b>To:</b> OpenStack General<br>
<b>Subject:</b> Re: [Openstack] KVM & Hyper-V Performance<br>
</font><br>
</div>
<div></div>
<div>
<div dir="ltr">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left-width:1px; border-left-style:solid; border-left-color:rgb(204,204,204); padding-left:1ex">
<span style="font-size:12.8px">For the DB test which one is which?  I don't see that information anywhere.</span><br style="font-size:12.8px">
<span style="font-size:12.8px">Chris</span></blockquote>
<div><br>
</div>
<div>First secreenshot from hyper-v, second screenshot from kvm.<br>
</div>
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left-width:1px; border-left-style:solid; border-left-color:rgb(204,204,204); padding-left:1ex">
<span style="font-size:12.8px">Which drivers (virtio) did you use in the Windows instances?</span></blockquote>
<div><br>
</div>
<div>I used this iso  <span class=""><a href="https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso" target="_blank">https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso</a> and
 viostor (Virtio Block Driver).</span></div>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div class="gmail_signature">
<p>gb</p>
</div>
</div>
<br>
<div class="gmail_quote">2016-05-12 19:21 GMT+03:00 David Medberry <span dir="ltr">
<<a href="mailto:openstack@medberry.net" target="_blank">openstack@medberry.net</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex; border-left:1px #ccc solid; padding-left:1ex">
<div dir="ltr">Which drivers (virtio) did you use in the Windows instances?</div>
<div class="HOEnZb">
<div class="h5">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, May 12, 2016 at 9:24 AM, Chris Friesen <span dir="ltr">
<<a href="mailto:chris.friesen@windriver.com" target="_blank">chris.friesen@windriver.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex; border-left:1px #ccc solid; padding-left:1ex">
<span>On 05/12/2016 08:52 AM, gulseren bulut wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex; border-left:1px #ccc solid; padding-left:1ex">
Hello,<br>
<br>
I done some tests for windows virtual server on KVM and Hyper-V.<br>
<br>
All resources of VMs is same.<br>
<br>
VM OS: Windows Server 2012 R2<br>
SQL: MSSQL Server 2012 R2<br>
4 GB RAM, 2 vCPUs<br>
(virtio is used for guestos on KVM)<br>
<br>
This is DB tpc test using HammerDB, VM on Hyper-V is stable more than KVM.<br>
</blockquote>
<br>
</span>For the DB test which one is which?  I don't see that information anywhere.<br>
<br>
Chris<br>
<br>
_______________________________________________<br>
Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
Post to     : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a><br>
Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
<br>
_______________________________________________<br>
Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
Post to     : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a><br>
Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" rel="noreferrer" target="_blank">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
</body>
</html>