Cannot start machine in Hyper-V - "Not Enough Memory in the system to start the virtual machine"
I have a Window 8.1 host trying to start a virtual machine through Hyper-V. The VM is configure to use 10GB of RAM, I have 16GB, it should start but it doesn't.
Instead I get the message
'{VM NAME}' could not initialise.
Not Enough Memory in the system to start the virtual machine {VM NAME}
The host has 16GB RAM, of which only 4.8GB is in use. This leaves at least 11GB available for Hyper-V to use. Except it can't.
To be more accurate, task manager reports the following memory situation:-
- In use - 4.8GB
- Available - 11.0 GB
- Committed - 7.5/21.9GB
- Cached - 10.8GB
- Paged Pool - 592MB
- Non-Paged pool - 309MB
I understand that I currently have 10.8GB of "Standby" memory. But this should be released if Hyper-V asks for it right?
If I reboot then immediately ask Hyper-V to start the machine, it works, but I have to be quick because the standby memory gets filled pretty quickly.
Is this normal? Is there a way to empty the standby memory and get it back, so that I can start my VM without having to reboot the host?
The VM is configure to use 10GB of RAM, I have 16GB, it should start but it doesn't.
Not enough info.
The host has 16GB RAM, of which only 4.8GB is in use. This leaves at least 11GB available for Hyper-V to use. Except it can't.
Too little. I love to add 1gb per vm as reserve.
Also you already have 7.5gb committed - that smells already wrong.
You are simply too thin. You can now:
- Get more memory or
- Reduce static memory allocation or
- Move to dynamic memory allocation and just give the machine 512mb to start then it grows as needed.
I had this problem with my VM. I tried almost everything. It finally worked when I went to the virtual Machine settings, clicked on Automatic Start Action in the menu on the left. and for the What do you want this virtual machine to do when the physical computer starts I chose the option "Always start this virtual machine automatically" and restart the host machine. This will prompt the host to start the vm before other services start on the host machine, allowing the host to allocate the memory required for the vm I hope this will help.