On 5/18/22 15:31, Daniel P. Berrangé wrote:
When picking defaults there is never a perfect answer, it
is more a matter of the least-worst option.
It is pretty clear that nthreads=1 is terrible for any
large VMs. Defaulting it to nvcpus made conceptual sense
as the user has implicit said that they expect the VM to
be able to consume nvcpus worth of CPU time on the host,
so we might as well consume that allotted resource.
I agree. Yes, one could argue that the regression was on the libvirt
side, but it's easier to fix it in QEMU.
If we later add the ability to create a memory backend before machine
creation (for example with a QMP-only binary), then it's of course okay
for those backends to use only one thread and require a manual choice
for the # or preallocation threads.
Paolo