Ubuntu – Responsiveness of GUI of Ubuntu 18.04 LTS running on Virtual Box 5.2.12 is very choppy and sluggish

18.04compizgraphicsunityvirtualbox

I am running Ubuntu 18.04 LTS on Vbox 5.2.12. To give you some context, calling it choppy would be an understatement, It is painfully slow. I have tried all the answers that I could find in the multiverse but I am still out of luck.

Ok, So everything is super snappy when I run commands on my terminal, but when I switch to GUI, it goes berserk, either it is too slow to respond or stutters a million times in a sec and gives me headaches.

Host Details:


OS: Windows 10
Physical Memory: 16 GB
Graphics Memory: 8GB (Intel UHD Graphics 620)
SSD: 256 GB
Processor: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz, 2112 Mhz, 4 Core(s), 8 Logical Processor(s)
Virtualization: Enabled

Guest Details:


OS: Ubuntu 18.04
RAM Allocated: 8192 MB (Reason: Hope. Still no luck)
VRAM Allocated: 256 MB (same reason as above)
Processor Count: 4
Execution Cap: 100%
3D Acceleration: Enabled
Guest Additions: Installed
Compiz Settings: Disabled Animation,Fading
Is 3D Acceleration Supported: Yes

raghu@devbox:~$ /usr/lib/nux/unity_support_test -p
OpenGL vendor string:   Humper
OpenGL renderer string: Chromium
OpenGL version string:  2.1 Chromium 1.9

Not software rendered:    yes
Not blacklisted:          yes
GLX fbconfig:             yes
GLX texture from pixmap:  yes
GL npot or rect textures: yes
GL vertex program:        yes
GL fragment program:      yes
GL vertex buffer object:  yes
GL framebuffer object:    yes
GL version is 1.4+:       yes

Unity 3D supported:       yes

Note: If you feel the answer that gets accepted is along the lines of the answers to previously asked questions, go ahead and mark it as a duplicate. Please wait at least until then. I have tried almost all the answers to similar questions and unfortunately, none of them worked for me.

Best Answer

Other than on bare metal a virtual machine does not always benefit from maxed out resources. This is because the supervisor (here Virtual Box) running on the host will also need some resources to run smoothly.

  1. Memory

    Leave as much memory for the host OS to operate without having to swap on the hard drive. If we had used 8 GB of 16 GB for an intergrated GPU then from the remaining 8 GB leave 2 GB or more for the host.

  2. CPU

    It is true that any guest OS will run the better the more cores we assign to the guest. If we assign all cores we may slow down the host and the performance of the virtual machine slows down with it. So it is often better to leave at least one core to the host, or define an execution cap of say 90% in the VirtualBox settings.

  3. Hard drive

    By using a dynamically growing drive we can assign a huge virtual drive that is physically much smaller as long as it was not filled with data. It will only use as much space as needed.

  4. Graphics card

    For 3D acceleration the host GPU is passed through to the guest with the guest additions graphics driver. This also means that all graphic card memory can also by accessed from the guest. Increasing the guest VGA memory to more than 128 MB is rarely needed.

Related Question