
On 08/07/2012 09:47 AM, Daniel P. Berrange wrote:
On Fri, Aug 03, 2012 at 02:36:02PM +0800, Hu Tao wrote:
This series is a merge of
1) "Support hypervisor-threads-pin in vcpupin" (https://www.redhat.com/archives/libvir-list/2012-July/msg01361.html) 2) "support to set cpu bandwidth for hypervisor threads" (https://www.redhat.com/archives/libvir-list/2012-June/msg01161.html)
to make life easier because of the two share some patches.
This series is really focusing on pinning threads associated with the <emulator> element, rather than the hypervisor. The hypervisor is a separate entity that is shared.
So I'm thinking that this entire patch series could replace 'hypervisor' with 'emulator' everywhere. Any one has agree or disagree ?
I definitely agree - when I hear 'hypervisor', I think 'qemu:///system', which is the technology used to run multiple guests, but when I hear 'emulator', I think of a subset of a domain, namely the specific qemu pid_t running a given guest. Also, we're not pinning all of the hypervisor's threads, but just the threads that are associated with emulation but not a specific vcpu. That is, marking up your comment in 1/17: cgroup mount point +--libvirt <= setting up a namespace (*) +--qemu <= hypervisor level +--domain name <= domain level +--vcpu0 <= vcpu level ... +--vcpuN +--"hypervisor" <= emulator so a domain really is made up of an 'emulator' and 'vcpu' threads, and a 'hypervisor' contains domains, rather than making up a portion of a domain. -- Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org