yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #35845
[Bug 1471187] Re: CPU topology does not honour cpu_max_threads when NUMA topology is used
** Changed in: nova
Status: Fix Committed => Fix Released
** Changed in: nova
Milestone: None => liberty-2
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1471187
Title:
CPU topology does not honour cpu_max_threads when NUMA topology is
used
Status in OpenStack Compute (nova):
Fix Released
Bug description:
Consider a flavour with 4 vcpus, and image property
hw:cpu_threads==2. Now the NUMA topology may prefer a thread count of
4, but best of the thread preference set, the guest will end up with 2
sockets, 1 core and 2 threads.
Now consider a flavour with 4 vcpus, and image property
hw:cpu_max_threads==2. Now the NUMA topology may prefer a thread count
of 4, but best of the thread limit is set, so the guest should again
end up with 2 sockets, 1 core and 2 threads.
The current code in nova.virt.hardware._get_possible_cpu_topologies()
is not honouring the cpu_max_threads setting in this scenario though,
so the guest ends up with 1 socket, 1 core and 4 threads. This
violates the cpu_max_threads setting.
Meanwhile if the vCPU count is 6 and the NUMA topology prefers a thread count of 4, then the code is actually incapable of coming up with a valid topology because it only considers topologies with an exact thread count of 4 and 4 does not divide into 6.
nova.exception.ImageVCPULimitsRangeImpossible: Requested vCPU limits
6:6:6 are impossible to satisfy for vcpus count 6
which is clearly a bogus error as you can easily satisfy that with
6:1:1, 1:6:1, 1:1:6, 2:1:3, 2:3:1, 3:2:1, 3:1:2, 1:2:3, 1:3:2, so it
should have picked 2:1:3, as that has thread count closest matching
the NUMA topology and the maximum socket count.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1471187/+subscriptions
References