Windows 10 slow, laggy and unusable

Discussions about using Windows guests in VirtualBox.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Windows 10 slow, laggy and unusable

Post by Jonal »

I cannot attach a log file because "The file is too big, maximum allowed size is 128KiB." How can I get the log file to you guys? When I save my log files they are 166KB


Hey! I know this question has been asked a lot, due to me googling a solution for my problem. None of the solutions on previous forum posts have helped in solving the issue.
The issue is as followed:
I am trying to run windows 10 in virtual box. More specifically I am trying to run MSEdge on Win10(x64) Stable 1809. After the VM has been setup in VB, I increase the RAM to 4 GB and increase the amount of cores to 2. I also change the Graphics Controller to VBoxSVGA and increase the Video memory to 128MB due an "invalid settings" error when I leave these settings as default.
When I run the VM, the windows "loading screen" is freezing and lagging/stuttering. If I wait for 30-1h for it to finish and I get to the windows login screen, the entire VM is lagging hard. Freezing, stuttering, very long input delay or sometimes not responding to input at all. It is 100% unusable. I can't happend to find a solution. Most forum posts talk about changing different settings, increasing RAM or the amount of cores. I have tried all kinds of combination and none seem to work.

Specs:
OS: Windows 10 home
ram: 16GB DDR4
CPU: Intel i7-6700k 4 cores

EDIT
Added my log in a zip file
Attachments
MSEdge - Win10-2021-01-21-18-22-56.zip
(31.15 KiB) Downloaded 84 times
Last edited by Jonal on 21. Jan 2021, 21:11, edited 1 time in total.
multiOS
Volunteer
Posts: 800
Joined: 14. Sep 2019, 16:51
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: WIN11,10, 7, Linux (various)
Location: United Kingdom

Re: Windows 10 slow, laggy and unusable

Post by multiOS »

'Zip' is a good method :)
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Windows 10 slow, laggy and unusable

Post by mpack »

I'm surprised that your Google searching didn't show that everyone zips their logs, and also that poor performance on Win10 hosts is nearly always caused by Hyper-v, exactly as yours is.
00:00:03.283451 HM: HMR3Init: Attempting fall back to NEM: VT-x is not available
00:00:03.336228 NEM: WHvCapabilityCodeHypervisorPresent is TRUE, so this might work...
00:00:03.336237 NEM: WHvCapabilityCodeExtendedVmExits = 0x0000000000000007
See last post in FAQ: I have a 64bit host, but can't install 64bit guests.

You should also update the Guest Additions, which are badly obsolete. Then disable transparency effects in Win10, then enable 3D acceleration.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Re: Windows 10 slow, laggy and unusable

Post by Jonal »

mpack wrote:Instead of pissing volunteers off by shouting at them, it really does pay to do some research sometimes y'all? That way you'd see that everyone zips their logs, and also that poor performance on Win10 hosts is nearly always caused by Hyper-v, exactly as yours is.
00:00:03.283451 HM: HMR3Init: Attempting fall back to NEM: VT-x is not available
00:00:03.336228 NEM: WHvCapabilityCodeHypervisorPresent is TRUE, so this might work...
00:00:03.336237 NEM: WHvCapabilityCodeExtendedVmExits = 0x0000000000000007
You should also update the Guest Additions, which are badly obsolete. Then disable transparency effects in Win10, then enable 3D acceleration.
I am quite new to the use of a VM. I have read that poor performance can be caused by Hypver-V (still no clue of why), I followed a previous forum post(which I can't link due to new account) where the solution was
TYour log contains these lines:
{timestamp} HM: HMR3Init: Attempting fall back to NEM: VT-x is not available
{timestamp} NEM: WHvCapabilityCodeHypervisorPresent is TRUE, so this might work...

You might notice in the guest window's Status Bar the green turtle: Image The choice of animal is appropriate: Your guest is running, just really slow. This is because a service that uses Microsoft Hyper-V is running on your host PC. Normally Hyper-V blocks Virtualbox. But your PC is of the type and OS where Virtualbox can attempt to run the guest using the Hyper-V engine. This arrangement is still being developed and isn't 100% yet.

If VirtualBox is running without Hyper-V enabled, and nothing else is interfering with hardware virtualization (VT-x / AMD-V), then the usual virtualization icon (Image) will be seen in the Status Bar.

To turn Hyper-V off completely, do this:
1. Shut down all programs. You will have to reboot your host.
2. Look into the 64-bits tutorial, 2nd post, points 2 & 3 and ensure that none of these things are running.
3. Find the Command Prompt icon, right click it and choose Run As Administrator.
4. Enter this command:
bcdedit /set hypervisorlaunchtype off
5. Enter this command:
shutdown -s -t 2
6. When the computer turns off, unplug it for 20 seconds. Then plug it in again and boot up Windows 10.
When I ran the VM, it had no distinct improvement. I have googled around and done my research. As said in the beginning, the solutions that i have found and tried out, have not done any improvement. The fact that I didn't even think about zipping the log file is me being dumb after 12 hours of work. Sorry about that. I don't belive I shouted at anyone or tried to be nasty in anyway? If it came out in the wrong way in my previous post, I do apologies.

How do I fix the poor performance due to "Hyper-V"? Already tried disabling it in terminal. I run the home version of windows so I can't turn it off/on as a windows feature.
fth0
Volunteer
Posts: 5668
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows 10 slow, laggy and unusable

Post by fth0 »

Jonal wrote:I followed a previous forum post(which I can't link due to new account) where the solution was
Read your own quote of this previous forum post again, and especially pay attention to the line starting with "4." regarding bcdedit. This part never failed when the instructions were followed closely.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Re: Windows 10 slow, laggy and unusable

Post by Jonal »

fth0 wrote:
Jonal wrote:I followed a previous forum post(which I can't link due to new account) where the solution was
Read your own quote of this previous forum post again, and especially pay attention to the line starting with "4." regarding bcdedit. This part never failed when the instructions were followed closely.
The command never failed. But after doing the guide including doing a cold reboot and trying to run the VM again, there was no difference. It still ran at a performance that made it un-useable. This is why I created this forum post. All other forum posts have failed to make any noticeable difference in performance.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Windows 10 slow, laggy and unusable

Post by mpack »

Look at your own log. If you still see the line in there about "WHvCapabilityCodeHypervisorPresent is TRUE, so this might work..." then Hyper-v is still running and you have not followed the FAQ instructions.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Re: Windows 10 slow, laggy and unusable

Post by Jonal »

mpack wrote:Look at your own log. If you still see the line in there about "WHvCapabilityCodeHypervisorPresent is TRUE, so this might work..." then Hyper-v is still running and you have not followed the FAQ instructions.
I do see that the Hypver-V is still on. I have no clue why. I have followed the guide to the point, even going so far as turning of my anti-virus, firewall and anything program/background task that I could suspect making the step-by-step guide fail. I added a screenshot of my terminal showing that it executed the command successfully. Turned off my PC, turned all power off and waited for 30sec, turned it back on. The only thing active in my BIOS is virtualiation to allow VB to run. I disabled VT-x in BIOS as requested by the guide. I checked my log again now, and the "WHvCapabilityCodeHypervisorPresent is TRUE". Do you guys have any clue why I can't manage to turn off my hyper-v?

Thank you
Attachments
Screenshot_45.png
Screenshot_45.png (13.32 KiB) Viewed 24073 times
fth0
Volunteer
Posts: 5668
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows 10 slow, laggy and unusable

Post by fth0 »

Ok, after reading your latest (detailed) post I'm convinced that you're trying your best, and I'll try my best to describe the key points to check now (IMHO):

1. VT-x has to be enabled in the BIOS, not disabled. VirtualBox 6.1.x does not run any VM without VT-x available (except when using Hyper-V, what we're trying to avoid here). Go to the BIOS setup, enable VT-x, save the BIOS settings, and turn off the computer (because on some PCs this setting only comes into effect when the CPU was really powered down).

2. Start the Windows host, and in an administrator command prompt enter bcdedit /enum all. The output will show the complete Windows Boot Manager configuration.

3. Start the VM, close the VM window after approximately 3 minutes, and post a zipped copy of the VBox.log file and the output of the bcdedit command in step 2.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Re: Windows 10 slow, laggy and unusable

Post by Jonal »

fth0 wrote:Ok, after reading your latest (detailed) post I'm convinced that you're trying your best, and I'll try my best to describe the key points to check now (IMHO):

1. VT-x has to be enabled in the BIOS, not disabled. VirtualBox 6.1.x does not run any VM without VT-x available (except when using Hyper-V, what we're trying to avoid here). Go to the BIOS setup, enable VT-x, save the BIOS settings, and turn off the computer (because on some PCs this setting only comes into effect when the CPU was really powered down).

2. Start the Windows host, and in an administrator command prompt enter bcdedit /enum all. The output will show the complete Windows Boot Manager configuration.

3. Start the VM, close the VM window after approximately 3 minutes, and post a zipped copy of the VBox.log file and the output of the bcdedit command in step 2.
Thank you very much. I am trying my best. I am a system dev, but I wanted to do something new when it came to coding and diving deeper into a topic I was not familiar with. This is my first time setting up my own VMs (just finished my bachlor and worked for about 6months now, so I am still very green) for a project and I got quite confused when following prev. solutions did not help.
I do value everyone's time. I have helped out on stack overflow and also helped out fellow students when I was in uni. I understand how people can get frustrated when they see redundant questions, or question from people too lazy to google the issue and trying to solve it themselves before asking for help.

I am quite embarrassed that, after going back into bios and turning the VT-x on (again) it worked. My VM runs smoothly and without any issues. I am extremely confused why. I did all the steps in the same order and it did not work. I repeated them when I worked through this forum post, and now it works... It clearly have to be me messing up along the way, even though I can't see where that could have been.
I apologies that my user error wasted peoples time here on the forum.

Can I ask one question about VMs? We learned about Hyper visors in uni even though this is my first time actually interacting with it. Why am I suppose to turn off my hyper-v? if my memory servers me correctly, doesn't VMs run on the hyper-v? Or have I misunderstood something? Does VB provid it's own hyper-v? Can a software even "provide a hyper-v"? I thought it was something build into the OS architecture. I would very much like to know why my hyper-v tanked performance of my VM, if that isn't too bothersome to answer. If it is, then that is completely fine and I am properly knees deep in wiki pages and forum-posts about this topic by the time of your reply :P
Last edited by mpack on 23. Jan 2021, 11:03, edited 1 time in total.
Reason: Removed profanity.
fth0
Volunteer
Posts: 5668
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Windows 10 slow, laggy and unusable

Post by fth0 »

Thank you for your kind, personal and introductory words, appreciated. If my previous wording sounded a bit unfriendly, that was not intended.

Regarding your questions about hypervisors:

There are different types of hypervisors for hardware virtualization: A type-1 hypervisor (e.g. VMware ESXi, Microsoft Hyper-V) runs on the bare hardware, and all OSs run in VMs inside it. A type-2 hypervisor (e.g. VMware Workstation, Oracle VirtualBox) runs inside an OS just like ordinary software, and additional OSs run in VMs inside it.

Because each level of hardware virtualization generates additional costs, you typically want to use only one hypervisor, independent on its type. So that means either VirtualBox or Hyper-V, but not both. In special use cases, you can use two nested hypervisors. This is best supported when both hypervisors are from the same manufacturer (e.g. VirtualBox inside VirtualBox, Hyper-V inside Hyper-V), because no manufacturer is particularly interested in supporting the competitor. So you want to avoid VirtualBox inside Hyper-V.
Jonal
Posts: 6
Joined: 21. Jan 2021, 19:09

Re: Windows 10 slow, laggy and unusable

Post by Jonal »

fth0 wrote:Thank you for your kind, personal and introductory words, appreciated. If my previous wording sounded a bit unfriendly, that was not intended.

Regarding your questions about hypervisors:

There are different types of hypervisors for hardware virtualization: A type-1 hypervisor (e.g. VMware ESXi, Microsoft Hyper-V) runs on the bare hardware, and all OSs run in VMs inside it. A type-2 hypervisor (e.g. VMware Workstation, Oracle VirtualBox) runs inside an OS just like ordinary software, and additional OSs run in VMs inside it.

Because each level of hardware virtualization generates additional costs, you typically want to use only one hypervisor, independent on its type. So that means either VirtualBox or Hyper-V, but not both. In special use cases, you can use two nested hypervisors. This is best supported when both hypervisors are from the same manufacturer (e.g. VirtualBox inside VirtualBox, Hyper-V inside Hyper-V), because no manufacturer is particularly interested in supporting the competitor. So you want to avoid VirtualBox inside Hyper-V.
Thank you for the explanation and all the help :)
boba2
Posts: 1
Joined: 2. Apr 2022, 12:06

Re: Windows 10 slow, laggy and unusable

Post by boba2 »

Just to add to your discussion: I had the same problems as Jonal - did all the steps meticulously following the instructions and was still getting the Hyper-V running.
What helped at the end was disabling "Kernel DMA Protection" in the BIOS.
scottgus1
Site Moderator
Posts: 20965
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: Windows 10 slow, laggy and unusable

Post by scottgus1 »

For future readers, boba2's solution is unusual and may lead to less host security. I'm not saying it didn't work in your case, Boba, but in reading the forum for several years, I have never heard of it as a fix for disabling Hyper-V. I just want to let anyone who tries this idea to note that unknown and unexpected side effects can happen.
SuperDre
Posts: 11
Joined: 10. May 2013, 17:24

Re: Windows 10 slow, laggy and unusable

Post by SuperDre »

I guess this is the same problem as in this closed topic Problems launching VM with VirtualBox > 6.1.32.
So 6.1.32 introduced a bug which makes Virtualbox not usable anymore when Hyper-V is enabled, which still hasn't been fixed in 6.1.34.
Turning off Hyper-V is not an option as it's needed for other processes, so one has to stay on 6.1.30 as that one is the last one that still runs perfectly with Hyper-V enabled.

Any idea if the bug is gonna be fixed or an option in VB itself so it is usable and still get the latest version of VB?
Post Reply