[openstack-dev] realtime kvm cpu affinities

Chris Friesen chris.friesen at windriver.com
Wed Jun 21 15:45:35 UTC 2017


On 06/21/2017 02:42 AM, Henning Schild wrote:
> Am Tue, 20 Jun 2017 10:41:44 -0600
> schrieb Chris Friesen <chris.friesen at windriver.com>:

>>> Our goal is to reach a high packing density of realtime VMs. Our
>>> pragmatic first choice was to run all non-vcpu-threads on a shared
>>> set of pcpus where we also run best-effort VMs and host load.
>>> Now the OpenStack guys are not too happy with that because that is
>>> load outside the assigned resources, which leads to quota and
>>> accounting problems.
>>
>> If you wanted to go this route, you could just edit the
>> "vcpu_pin_set" entry in nova.conf on the compute nodes so that nova
>> doesn't actually know about all of the host vCPUs.  Then you could
>> run host load and emulator threads on the pCPUs that nova doesn't
>> know about, and there will be no quota/accounting issues in nova.
>
> Exactly that is the idea but OpenStack currently does not allow that.
> No thread will ever end up on a core outside the vcpu_pin_set and
> emulator/io-threads are controlled by OpenStack/libvirt.

Ah, right.  This will isolate the host load from the guest load, but it will 
leave the guest emulator work running on the same pCPUs as one or more vCPU threads.

Your emulator_pin_set idea is interesting...it might be worth proposing in nova.

Chris



More information about the OpenStack-dev mailing list