I/O (PCIe) Based NUMA Scheduling can't really achieve pci numa binding in some cases.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Invalid
|
Medium
|
Jinquan Ni |
Bug Description
1. version
kilo 2015.1.0, liberty
this bug is base on BP:
https:/
In the current implementation scheme:
/nova/pci/stats.py
#######
def _filter_
# Some systems don't report numa node info for pci devices, in
# that case None is reported in pci_device.
# to numa_cells we allow assigning those devices to instances with
# numa topology
numa_cells = [None] + [cell.id for cell in numa_cells]
#######
If some compute nodes don't report numa node info for pci devices.
Then these pci devices will be regarded as "belong to all numa node" to deal with by default.
This can lead to a problem:
Pci devices is not on the numa node which CPU\MEM on.
In this way, the real purpose of I/O (PCIe) Based NUMA Scheduling is not reached.
More serious is that the user will be wrong thought pci devices is on the numa node that CPU\MEM on.
The truth is, there are still many systems don't report numa node info for pci devices.
So, i think this bug need fixed.
Changed in nova: | |
assignee: | nobody → jinquanni(ZTE) (ni-jinquan) |
tags: | added: numa pci |
description: | updated |
Changed in nova: | |
status: | New → In Progress |
Changed in nova: | |
importance: | Undecided → Medium |
Changed in nova: | |
milestone: | none → newton-2 |
Are you able to recreate this on master (mitaka) or liberty to see if this is already fixed?