Overcommitting CPUs with BHyve?

John-Mark Gurney jmg at funkthat.com
Wed Jul 25 03:31:04 UTC 2018


Alan Somers wrote this message on Tue, Jul 24, 2018 at 15:30 -0600:
> What are people's experiences with overcommitting CPUs in BHyve?  I have an
> 8-core machine that often runs VMs totalling up to 5 allocated CPUs without
> problems.  But today I got greedy.  I assigned 8 cores to one VM for a big
> build job.  Obviously, some of those were shared with the host.  I also
> assigned it 8GB of RAM (out of 16 total).  Build performance fell through
> the floor, even though the host was idle.  Eventually I killed the build
> and restarted it with a more modest 2 make jobs (but the VM still had 8
> cores).  Performance improved.  But eventually the system seemed to be
> mostly hung, while I had a build job running on the host as well as in the
> VM.  I killed both build jobs, which resolved the hung processes.  Then I
> restarted the host's build alone, and my system completely hung, with
> top(1) indicating that many processes were in the pfault state.
> 
> So my questions are:
> 1) Is it a known problem to overcommit CPUs with BHyve?

Likely as someone else mentioned the spin lock problem...  It's best if
you can schedule ALL vCPUs at the same time, but obviously the more vCPUs
the harder this becomes, and I don't believe that FreeBSD has a scheduler
that allows you to do this.

The late Benjamin Perrault (iirc) said that his limit was 7 vCPU's per
CPU, I don't remember if that was core or threads (likely core)..  But
I also don't know his work load, or vCPUs per VM...

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."


More information about the freebsd-virtualization mailing list