Lazy Allocates all memory on startup
Posted: 8. Oct 2019, 21:52
I have several Windows 10 Guest vm boxes that I run on a Windows 10 host.
The problem is when I start up a vm it lazy allocates all memory before the box starts instead of only lazy loading what it needs. You can watch the memory slowly be allocated on the host machine. Once it allocates all the memory it starts windows.
I have set VBoxInternal/RamPreAlloc to 1 and it will load the vm a lot faster and in bigger memory chunks, so I don't think this is a RamPreAlloc issue.
Also if I save a vm that has already been started, and start it again, the vm will only use the memory it needs and lazy allocates additional memory only when needed like you would expect. This seems to be only a problem if you are starting the vm for cold instead of from a save point.
Is there any reason why Virtualbox would try and lazy load all memory before windows starts? Or is there a program or service in windows 10 that physical checks all the memory on startup? The only thing I can think of is on a cold start windows actually goes out and does some diagnostic on the ram which causes virtualbox to lazy allocate all the memory at start up.
Thanks
Redd
The problem is when I start up a vm it lazy allocates all memory before the box starts instead of only lazy loading what it needs. You can watch the memory slowly be allocated on the host machine. Once it allocates all the memory it starts windows.
I have set VBoxInternal/RamPreAlloc to 1 and it will load the vm a lot faster and in bigger memory chunks, so I don't think this is a RamPreAlloc issue.
Also if I save a vm that has already been started, and start it again, the vm will only use the memory it needs and lazy allocates additional memory only when needed like you would expect. This seems to be only a problem if you are starting the vm for cold instead of from a save point.
Is there any reason why Virtualbox would try and lazy load all memory before windows starts? Or is there a program or service in windows 10 that physical checks all the memory on startup? The only thing I can think of is on a cold start windows actually goes out and does some diagnostic on the ram which causes virtualbox to lazy allocate all the memory at start up.
Thanks
Redd