My VM is so slow and I'm fed up about it :-) I don't know if its the CPU or the RAM but something is wrong.
I have a Windows Server 2016 host machine running Hyper-V with ONE single VM. The server is running with an older i5-3450 with 16 gb of memory. I should be able.
The Virtual machine is running Windows 7, and opening any application on it takes forever! Even the browser, click the desktop shortcut and grap yourself a cup of coffee - it's going to take a while! 30-60s.
I don't think its the CPU. It's an older i5, I know, but the server sits stable at 20-30%. Of the 16GB ram, it has used 31%.
On the VM its the same story. Opening Chrome spikes it to 60% but falls right back to <30%, with a average of 15% if I had to guess. It has allocated 2048 MB ram, and without Chrome open it has used 1.28 GB, about 57%. But, is the "virtual paging thingy" set up wrong? I've configured the virtual memory to minimum be 1.5x allocated RAM and max 3.0x allocated RAM.
What is the "4 MB Free Physical Memory"? Its 4 MB so maybe the problem is that? But its not "true" physical memory, because it has used 1.28 of the allocated 2048, and the paging thingy is set to 3072-6144.
11 Answer
In order to run a VM decent, 2 things must be true.
- There must be enough resources allocated to the VM
- There must be enough resources NOT allocated so the host can breathe.
A rule of thumb is that it takes the host as much memory as all VM's together AND enough CPU cycles to deal with everything.
In your case, the host has just one CPU assigned to the system where the VM has 3. The host will choke here.
In addition, you have 2 GB of RAM assigned to the VM, and 14 GB is left for the host.
To run Windows 7 decent, 2 GB of RAM is very on the low side. 6 to 8 GB would make it run decently enough.
Lastly, it is a virtual environment, so it is always going to be slower than without a Hyper-V layer in between.
So what I recommend you to do is to change the CPU allocation to 2 CPU's for the VM, and increase the RAM to 8 GB.
Why is this important? Paging is slow, and its even a lot slower if it has to do that on a virtual disk because everything runs on that same disk. So you will want to try and avoid paging as much as possible.
Lastly, Windows Server with Hyper-V just to run Windows 7 as guest is not an ideal scenario if you want the fastest experience.
I have tested many scenarios, and what seems to work the fastest, is running CentOS 7 Server with Oracle VM as hypervisor.
My server at home has this, and it runs Windows Server 2016 times 2. A DC and Terminal Server, and the performance is excellent. 16 GB RAM and a slower CPU than you have.
3