On Mon, Sep 21, 2020 at 03:47:56PM +0200, Peter Lieven wrote:
> Am 21.09.20 um 10:29 schrieb Daniel P. Berrangé:
> > On Sun, Sep 20, 2020 at 10:24:41PM +0200, Peter Lieven wrote:
> > > Hi Qemu folks,
> > > 
> > > 
> > > is there a BCP to limit just the maximum usage of a virtual (KVM) cpu?
> > > 
> > > I know that there are many approaches, but as far as I know they all 
> > > limit the complete qemu process which is far more
> > > 
> > > than just the virtual CPUs.
> > > 
> > > Is it possible to limit just the vCPU threads and leave threads that
> > > handle the monitor, vnc, qmp, iothreads, storage backend etc.
> > Libvirt uses cgroups to achieve what you describe. A cgroup for the
> > QEMU process as a whole, then create child cgroups, one for each
> > vCPUs, and a further one for non-vCPU threads. CPU limits are then
> > applied on the child cgroups.
> 
> 
> Hi Daniel,
> 
> 
> I came up with the same solution. Is there a nice way to get the thread ids 
> of the vCPUs?
> 
> Iterating over all thread IDs and check the names works, but the thread names 
> are not considered
> 
> a stable API (text from original commit message).

The QMP  query-cpus  command tells you thread IDs. There is similar for
I/O threads too.  This is what libvirt uses to determine the mappings.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|


Reply via email to