ironic_python_agent.numa_inspector.
collect_numa_topology_info
(data, failures)[source]¶Collect the NUMA topology information.
The data is gathered from /sys/devices/system/node/node<X> and /sys/class/net/ directories. The information is collected in the form of:
{
"numa_topology": {
"ram": [{"numa_node": <numa_node_id>, "size_kb": <memory_in_kb>},
...],
"cpus": [
{
"cpu": <cpu_id>, "numa_node": <numa_node_id>,
"thread_siblings": [<list of sibling threads>]
},
...,
],
"nics": [
{"name": "<network interface name>", "numa_node": <numa_node_id>},
...,
]
}
}
data – mutable data that we’ll send to inspector
failures – AccumulatedFailures object
None
ironic_python_agent.numa_inspector.
get_nodes_cores_info
(numa_node_dirs)[source]¶Collect the NUMA nodes cpu’s and thread’s information.
NUMA nodes path: /sys/devices/system/node/node<node_id>
Thread dirs path: /sys/devices/system/node/node<node_id>/cpu<thread_id>
topology/core_id
The information is returned in the form of:
"cpus": [
{
"cpu": <cpu_id>, "numa_node": <numa_node_id>,
"thread_siblings": [<list of sibling threads>]
},
...,
]
numa_node_dirs – A list of NUMA node directories
IncompatibleNumaFormatError: when unexpected format data in NUMA node
A list of cpu information with NUMA node id and thread siblings
ironic_python_agent.numa_inspector.
get_nodes_memory_info
(numa_node_dirs)[source]¶Collect the NUMA nodes memory information.
The information is returned in the form of:
"ram": [{"numa_node": <numa_node_id>, "size_kb": <memory_in_kb>}, ...]
numa_node_dirs – A list of NUMA node directories
IncompatibleNumaFormatError: when unexpected format data in NUMA node
A list of memory information with NUMA node id
ironic_python_agent.numa_inspector.
get_nodes_nics_info
(nic_device_path)[source]¶Collect the NUMA nodes nics information.
The information is returned in the form of:
"nics": [
{"name": "<network interface name>",
"numa_node": <numa_node_id>},
...,
]
nic_device_path – nic device directory path
IncompatibleNumaFormatError: when unexpected format data in NUMA node
A list of nics information with NUMA node id
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.