Very Slow Bhyve VM's on Freenas 11.2 U4.1

jdp220

Cadet
Joined
Jan 10, 2018
Messages
2
Hi Everyone
I recently decided to switch from hosting Plex in a VM on ESXi 6.5 to bare metal so I can try to eliminate a virtualization layer. Also, I have read that a virtualized Freenas is never a good idea-- though I ran it quite well for 3+ years and never lost any data.

Either way, I wanted to have some virtual machines on my Freenas box-- a windows 10 VM and an Ubuntu 18.04 VM.

I have a Dell Precision T7810
Integrated: Intel AHCI 6Gb/s SATA controller with six ports (LSI SAS 9211-8i arrives tomorrow, June 6th to see if this helps)
Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz (40 cores)
128GBGB 2400MHz DDR4 RDIMM ECC -- RAM might actually be throttled to 2133mhz. I'd have to double check.

I have been testing on several different hard drives, I have two 3TB (7200rpm) drives and Two 2TB (5400rpm) drives and Two 512GB SSD drives..

I originally set my Zvols for the VM's on the 3TB drives which was just mirrored. But the VM performance was slow!!

I then tried putting it on a standalone SSD Drive, however the VM performance is still very slow.

Windows 10 recognizes the CPU cores and the VirtIO NIC (1.118 as suggested).

Ubuntu 18.04 LTS is running, it's slow, but I can manage. The Windows 10 Desktop is supposed to be used as a Remote Desktop machine on a daily basis-- as it was on ESXi.

I'm not exactly sure what is slowing it down.. the CPU in task manager shows low usage, however the DISK shows near 100% all the time. However, on Freenas using gstat or other monitoring tools, it does not appear the disk is being hit that hard. I have tried several different block sizes on the volume as well. Nothing seems to help.

I normally do not ask for help, as I can usually find the answer online. But I cannot seem to get anything on this.

Does anyone have any suggestions? I would really appreciate any help!
 

jdp220

Cadet
Joined
Jan 10, 2018
Messages
2
So, after some initial windows updates and tweaking the ZVOL block size (From 128k to 16K), it doesn't appear to be maxing out the disk or CPU anymore.. it's just plain slow. However, I downloaded the TimerTool (https://www.ixsystems.com/community/threads/bhyve-windows-10-vm-fix-for-laggy-gui.70406/) and it appears to be much better so far.. but is this the best solution? Aren't there any Tunables or settings I can change to force the timer to be effective the entire duration the VM is booted rather than having the tool running?
 

zizzithefox

Dabbler
Joined
Dec 18, 2017
Messages
41
Listen, I love freenas because it saved my data many many times. BUT... Windows virtualization with bhyve is bad. I barely manage to run a domain controller with windows server 2012 r2. The TimerTool just makes things a little better with regards to responsiveness, but both the disks and the network are painfully slow.
Unless they do something about the storage controller with proper paravirtual support, and implement gpu passthrough in a decent manner, you are just stuck with that kind of performance.
Linux is fine, though.

bhyve is a very promising hypervisor, very stable and all. But it is still very immature.
 

zizzithefox

Dabbler
Joined
Dec 18, 2017
Messages
41
By the way I have always set max frequency at lower levels because bhyve stops any scaling from happening, and I don't want nor need my cpu to run at full power, especially 24/7. Now that I'm also stopping it from TRYING to scale DOWN, which it cannot because of bhyve, it is better.
This is something I discovered by pure chance (-M and -m powerd_flags tunable in rc.conf).
Also, disabling VNC after enabling RDP makes a difference they say, although in my case it does not.
 

zizzithefox

Dabbler
Joined
Dec 18, 2017
Messages
41
Huge performance boost in TrueNAS Code 12.0. If you can, upgrade.
 
Top