could someone please explain to me what the VCPU option in the advanced settings of a Qube basically means or coud point me to the right link in the documentation (I cannot find it).
Right now it is set to “2” in all qubes.
Under which circumstances does it make sense to change it?
My CPU has more than two physical cores.
It’s the number of virtual CPUs (aka cores) available to a certain qube.
Two seems to be a very good default.
I have experimented with some “sys-” qubes just having one VCPU, which
mostly works fine with proxy VMs although I have the impression my
webcam (sys-usb) works more reliably with 2 VCPU (moving the data from
USB to qrexec). But this is just observation/guessing.
A reason to add more VCPU would be if you are running a program that
makes extensive use of concurrency (e.g. a compiler or render).
Setting VCPU number to 12 on a 6-physical-core machine does bring up better results (than 6, and significantly than 2) in browser benchmark. It’s weird,because Qubes disables SMT by default.
There’s a real confusion going on in this thread.
Qubes does disable SMT by default - you can check with sudo cat /proc/cpuinfo
in dom0 and see that you have the number of cores there.
But you can allocate more than the number of cores to a qube - try it.
You can allocate more than the number of cores across qubes in total.
For example, I currently have one qube running with 80 vcpus.
Does this improve performance? Not at all: it just makes the hypervisor
work harder.
If you over allocate vcpus, then Xen will simulate the missing cores by
suspending some vcpus, or just ignore the extra count.
If you over allocate the cores, then you are more likely to waste CPU
resources.
Generally, I would suggest starting with the minimum, and then step up
by single increments until you find the level that’s needed for best
performance in that qube.
Almost all my qubes are running with 1 vcpu, and I don’t notice the
difference.
I have 4 logical core cpu no virtual cores, i set 10 vcpus. Qubes qube lscpu shows it got vcpus.
Ok, remade to have 44 vpcus. Each l1 l2 l3 cache adds up. All works.
Test good. Setting back to 2.