cpu pining fails with 1 sibling cpu set and 2 single cpu set
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
In Progress
|
Low
|
Ritesh Paiboina |
Bug Description
Description
===========
CPU pinning fails when the sibling set consists of single VCPUS and a sibling set.
For example,
CoercedSet([45]), CoercedSet([31]), CoercedSet([1, 25])
Considering a case,
When a compute with NUMA NODE 1 which has 4 VCPU and 16GB RAM available to use.
And when you to try to launch a instance with a flavor of 4 VCPU and 16GB RAM, it is failed to launch i.e "message": "No valid host was found. There are not enough hosts available."
Total Available VCPUS
1,3,5,7,
Used VCPUS
3,5,7,9,
Free VCPUS
1,25,31,45
VCPUS STATISTICS
Total : 22
Usage : 18
Free : 4
siblings=
1, 25 , 31 and 45 VCPUS are available to use but nova could not able to use them.
As 31 and 45 are not siblings , Nova is not considering them to boot the VM.
Because of Numa Topology Filter returns with 0 hosts available.
Steps to reproduce
==================
We have 22 VCPUS available for Pinning in NUMA NODE 1.
1. Launch an instance with 1 VCPU
2. Launch an instance with 1 VCPU
3. Launch an instance with 8 VCPU
4. Launch an instance with 8 VCPU
5. Launch an instance with 4 VCPU
Expected result
===============
Instance should be in active state
Actual result
=============
Instance is in Error state.
| fault | {"message": "No valid host was found. There are not enough hosts available.", "code": 500, "details": " File \"/usr/
Environment
===========
1. Exact version of OpenStack you are running.
Mitaka Stable
2. Which hypervisor did you use?
Libvirt + KVM
2. Which storage type did you use?
None
3. Which networking type did you use?
Neutron with OpenVSwitch
Fix proposed to branch: master /review. openstack. org/423334
Review: https:/