CPU thread policy "require" demands that instances are created on hosts
with hardware threads, e.g HyperThreading. It is possible that a compute
has several NUMA nodes, but only some of them contribute to the list of
pinned CPUs. In this case NUMATopologyFiler will exclude the compute
from candidates even if hardware threads are enabled and cores from
other NUMA nodes are available for CPU pinning.
This commit allows a compute with enabled HyperThreading to pass
NUMATopologyFilter if at least one NUMA node contributes to the list of
cores allowed for CPU pinning.
Reviewed: https:/ /review. openstack. org/334659 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=1c04e18ec92 2b6a6f6de6734fb ceb0eed336f2ee
Committed: https:/
Submitter: Jenkins
Branch: master
commit 1c04e18ec922b6a 6f6de6734fbceb0 eed336f2ee
Author: Mikhail Chernik <email address hidden>
Date: Mon Jun 27 22:04:46 2016 +0200
Fix require thread policy for multi-NUMA computes
CPU thread policy "require" demands that instances are created on hosts
with hardware threads, e.g HyperThreading. It is possible that a compute
has several NUMA nodes, but only some of them contribute to the list of
pinned CPUs. In this case NUMATopologyFiler will exclude the compute
from candidates even if hardware threads are enabled and cores from
other NUMA nodes are available for CPU pinning.
This commit allows a compute with enabled HyperThreading to pass yFilter if at least one NUMA node contributes to the list of
NUMATopolog
cores allowed for CPU pinning.
Change-Id: I3235cc6bf1a2a9 e29a17acc43472e 2a6bd4c26ec
Closes-Bug: 1596692