Windows Server 2012 on ProxMox 3.1 - unusual load on the core machine

Caba

New Member
Oct 31, 2012
6
0
1
Plovdiv, Bulgaria, Bulgaria
Hi guys,
I have searched for similar posts in this forum but no success till now.
That's why I decided to register this issue here and to hope that someone could help me.

After installing Server 2012 on ProxMox 3.1 environment i registered an unusual high load on the physical machine.

The config file of VM:
boot: c
bootdisk: virtio0
cores: 4
cpu: host
cpuunits: 1000
memory: 32768
name: Wiho8
net0: e1000=6E:5F:6B:52:FF:7C,bridge=vmbr0
net1: virtio=4E:00:BA:E9:16:2D,bridge=vmbr0
ostype: win8
scsihw: virtio-scsi-pci
sockets: 2
virtio0: proxmox-images:100/vm-100-disk-1.raw,format=raw,size=950G

However, this is the current config, I have made a lot of experiments - 20 cores (2x10), 16 cores (4x4), fixed RAM - 32, 48, 60 GB, Dynamic RAM with Balloon Driver and Balloon service (from 24 to 48 GB), I disabled also the option
"Use tablet for pointer", disabled Time syncronization in windows... No success.
I use 2 network cards just for testing - now e100 is disabled, the virtio one is enabled. I use the latest VirtIO drivers from RedHat.

This VM is intended to be the only one VM on a core machine with 24 cores and 64 GB of RAM, RAID 10 with SAS disks.

Some more info:
1. The Process Hacker application shows a lot of CPU time spent on Interrupts and DPCs (Deferred Procedure Calls). More CPUs I use, more CPU power is wasted on that.
2. The first row from htop output:

PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
36159 root 20 0 32.6G 31.4G 4228 S 238. 49.8 1h21:30 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36191 root 20 0 32.6G 31.4G 4228 S 35.0 49.8 9:41.62 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36190 root 20 0 32.6G 31.4G 4228 S 33.0 49.8 9:53.84 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36186 root 20 0 32.6G 31.4G 4228 R 30.0 49.8 9:50.24 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36189 root 20 0 32.6G 31.4G 4228 S 29.0 49.8 9:53.47 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36185 root 20 0 32.6G 31.4G 4228 S 29.0 49.8 9:36.83 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36192 root 20 0 32.6G 31.4G 4228 S 26.0 49.8 10:02.87 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36187 root 20 0 32.6G 31.4G 4228 S 24.0 49.8 9:34.55 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv
36188 root 20 0 32.6G 31.4G 4228 S 22.0 49.8 9:40.86 /usr/bin/kvm -id 100 -chardev socket,id=qmp,path=/var/run/qemu-serv



this first row is for the whole VM, all the others are related to each CPU-core, dedicated to the VM. From time to time this CPU-core usage increases till 1500-1800% while all the others are normally used - under 100% each of them.

I think this has something to do with the interrupts and latency on the VM.

Has anyone faced such a problem?

I will highly appreciate any opinion or advice here.

Thanks in advance!
 
Is this VM running SQL server by any chance?

Does performance improve if you cut back to one socket?
 
Last edited:
I'm not sure it will make a difference, but I would not use the latest virtio drivers. I'm using virtio-win-0.1-59.
 
I'm running a windows server 2012 vm, 8GB Ram assigned, 8 cores, 1 socket. Process hacker states that interrupts are using .23 % of cpu. The kvm itself is using 5.7% cpu on the host. I have sql server running but its not under load at all.

What happens if you run just one core?
 
I switched to 1 socket, 8 cores.
The same behavior, Interrupts and DPCs still consume up to 25% of the CPU and the load of the physical machine is around 2.
Now I will change the VirtIO drivers to an older version. Now I use 0.1-65.
 
Hi again guys,
I think the problem is in one of the drivers or in any incompatibility between Server2012 and ProxMox.
I am attaching a result of a latency checking. Despite of changing the VirtIO drivers from different builds I ever get this result.

Any ideas?
LatencyChecker.jpg
 
I have four Windows Server 2012 R2 running on my server (with the latest virtio driver) and don't have any high load you experience. Try to change the CPU-type (e.g. host - what I currently use). Does a clean-installation of WS2012 also have such a high latency?
 
Hi, thanks for the answer!
The CPU type now is host. I also tried with the default cpu type, no difference.
The load and the latency were also so high on a clean installation.
 
Which Windows Server version you have? Try R1 or R2 - maybe it's a Windows related issue? You could try other Windows versions like XP, Windows 7/8. Is the CPU usage in the VM also so high as on the host machine or just terrible slow?
 
It is not R2 and unfortunately I cannot make tests on this host-machine, I simply don't have place for another VM...
Also this is a production Windows server with a lot ow web-sites and it is very hard for me even to do any changes on the drivers etc.

Any other ideas?
 
Sadly no. Maybe you can get some free ressources for a Windows XP machine - XP does not need so many ressources.
Does the virtual machine itself use so many CPU or HDD ressources or does just the host use so much?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!