Given the following single-socket, four-core, HT-enabled CPU topology:
+---+---+ +---+---+ +---+---+ +---+---+
| x | x | | x | | | x | | | | |
+---+---+ +---+---+ +---+---+ +---+---+
1 4 2 5 3 6 4 7
Attempting to boot an instance with four cores and no explicit
'cpu_thread_policy' should be successful, with cores 5,6,4,7 used.
However, the current implementation of this implicit policy attempts to
fit the same number of instance cores onto each host CPU. For example,
a four core instance would result in either a 2*2 layout (two instance
cores on each of two host CPUs), or a 1*4 layout (one instance core on
each of four host CPUs). This may be correct behavior *where possible*,
but if this is not possible then any and all cores should be used.
Resolve this issue by adding a fallthrough case, whereby if the
standard fitting policy fails, a linear assignment is used to properly
fit the instance cores.
Reviewed: https:/ /review. openstack. org/342709 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=8361d8d6c31 5bb3ae71c3ff014 7f7d5156bc46f3
Committed: https:/
Submitter: Jenkins
Branch: master
commit 8361d8d6c315bb3 ae71c3ff0147f7d 5156bc46f3
Author: Stephen Finucane <email address hidden>
Date: Tue Jul 19 14:01:53 2016 -0700
Allow linear packing of cores
Given the following single-socket, four-core, HT-enabled CPU topology:
+---+---+ +---+---+ +---+---+ +---+---+
| x | x | | x | | | x | | | | |
+---+---+ +---+---+ +---+---+ +---+---+
1 4 2 5 3 6 4 7
Attempting to boot an instance with four cores and no explicit thread_ policy' should be successful, with cores 5,6,4,7 used.
'cpu_
However, the current implementation of this implicit policy attempts to
fit the same number of instance cores onto each host CPU. For example,
a four core instance would result in either a 2*2 layout (two instance
cores on each of two host CPUs), or a 1*4 layout (one instance core on
each of four host CPUs). This may be correct behavior *where possible*,
but if this is not possible then any and all cores should be used.
Resolve this issue by adding a fallthrough case, whereby if the
standard fitting policy fails, a linear assignment is used to properly
fit the instance cores.
Change-Id: I73f7f771b75140 60f1f74066e3dea 1da8fe74c21 backport- potential
Closes-Bug: #1578155
mitaka-