Activity log for bug #1635253

Date Who What changed Old value New value Message
2016-10-20 12:59:14 Karthik S bug added bug
2016-10-20 12:59:29 Karthik S ironic-inspector: assignee Karthik S (ksundara)
2016-10-20 13:00:50 Saravanan KR bug added subscriber Saravanan KR
2016-11-08 10:43:10 Karthik S description In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. * Siblings List for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be { "inventory": { "cpu": { "numa_nodes": { "numa_node_0": [<list of CPUs in NUMA node 0>], "numa_node_1": [<list of CPUs in NUMA node 1>] }, ... } } } Example: { "inventory": { "cpu": { "numa_nodes": { "numa_node_0": [0,1,2,3], "numa_node_1": [4,5,6,7] }, ... } } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be { "inventory": { "cpu": { "sibling": [ [ <first set of sibling threads>], [ <2nd set of siblings> ], ... ], ... } } } Example: { "inventory": { "cpu": { "sibling": [ [0,1], [2,3], [4,5], [6,7] ], ... } } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be { "extra": { "network": { "eth0": { ... "businfo": "pci@0000:01:00.0", "numa_node": <numa node associated with this PCI device>, ... }, "eth1": { ... "businfo": "pci@0000:85:00.1", "numa_node": <numa node associated with this PCI device>, ... } ... } ... } ... } Example: { "extra": { "network": { "eth0": { ... "businfo": "pci@0000:01:00.0", "numa_node": 0, ... }, "eth1": { ... "businfo": "pci@0000:85:00.1", "numa_node": 1, ... } ... } ... } ... }
2016-11-09 10:26:17 Karthik S description In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be { "inventory": { "cpu": { "numa_nodes": { "numa_node_0": [<list of CPUs in NUMA node 0>], "numa_node_1": [<list of CPUs in NUMA node 1>] }, ... } } } Example: { "inventory": { "cpu": { "numa_nodes": { "numa_node_0": [0,1,2,3], "numa_node_1": [4,5,6,7] }, ... } } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be { "inventory": { "cpu": { "sibling": [ [ <first set of sibling threads>], [ <2nd set of siblings> ], ... ], ... } } } Example: { "inventory": { "cpu": { "sibling": [ [0,1], [2,3], [4,5], [6,7] ], ... } } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be { "extra": { "network": { "eth0": { ... "businfo": "pci@0000:01:00.0", "numa_node": <numa node associated with this PCI device>, ... }, "eth1": { ... "businfo": "pci@0000:85:00.1", "numa_node": <numa node associated with this PCI device>, ... } ... } ... } ... } Example: { "extra": { "network": { "eth0": { ... "businfo": "pci@0000:01:00.0", "numa_node": 0, ... }, "eth1": { ... "businfo": "pci@0000:85:00.1", "numa_node": 1, ... } ... } ... } ... } In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be {   "inventory": {     "cpu": {       "numa_nodes": {         "numa_node_0": [<list of CPUs in NUMA node 0>],         "numa_node_1": [<list of CPUs in NUMA node 1>]       },       ...     }   } } Example: {   "inventory": {     "cpu": {       "numa_nodes": {         "numa_node_0": [0,1,2,3],         "numa_node_1": [4,5,6,7]       },       ...     }   } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be {   "inventory": {     "cpu": {       "sibling": [         [ <first set of sibling threads>],         [ <2nd set of siblings> ],         ...       ],       ...     }   } } Example: {   "inventory": {     "cpu": {       "sibling": [         [0,1],         [2,3],         [4,5],         [6,7]       ],       ...     }   } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be { "inventory": { "interfaces": [ { "businfo": "<PCI address of the interface>", "numa_node": <numa node associated with this PCI device> ... }, ... ] } } Example: { "inventory": { "interfaces": [ { "businfo": "0000:01:00.0", "numa_node": 0 ... }, ... ] } }
2016-11-09 10:31:48 Karthik S description In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be {   "inventory": {     "cpu": {       "numa_nodes": {         "numa_node_0": [<list of CPUs in NUMA node 0>],         "numa_node_1": [<list of CPUs in NUMA node 1>]       },       ...     }   } } Example: {   "inventory": {     "cpu": {       "numa_nodes": {         "numa_node_0": [0,1,2,3],         "numa_node_1": [4,5,6,7]       },       ...     }   } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be {   "inventory": {     "cpu": {       "sibling": [         [ <first set of sibling threads>],         [ <2nd set of siblings> ],         ...       ],       ...     }   } } Example: {   "inventory": {     "cpu": {       "sibling": [         [0,1],         [2,3],         [4,5],         [6,7]       ],       ...     }   } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be { "inventory": { "interfaces": [ { "businfo": "<PCI address of the interface>", "numa_node": <numa node associated with this PCI device> ... }, ... ] } } Example: { "inventory": { "interfaces": [ { "businfo": "0000:01:00.0", "numa_node": 0 ... }, ... ] } } In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be { "inventory": { "cpu_topology": { "numa_nodes": { "numa_node_0": [<list of CPUs in NUMA node 0>], "numa_node_1": [<list of CPUs in NUMA node 1>] }, ... } } } Example: { "inventory": { "cpu_topology": { "numa_nodes": { "numa_node_0": [0,1,2,3], "numa_node_1": [4,5,6,7] }, ... } } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be { "inventory": { "cpu_topology": { "sibling": [ [ <first set of sibling threads>], [ <2nd set of siblings> ], ... ], ... } } } Example: { "inventory": { "cpu_topology": { "sibling": [ [0,1], [2,3], [4,5], [6,7] ], ... } } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be {   "inventory": {     "interfaces": [       {         "businfo": "<PCI address of the interface>",         "numa_node": <numa node associated with this PCI device>         ...       },       ...     ]   } } Example: {   "inventory": {     "interfaces": [       {         "businfo": "0000:01:00.0",         "numa_node": 0         ...       },       ...     ]   } }
2016-11-09 10:39:11 Karthik S affects ironic-inspector ironic-python-agent
2016-11-10 07:07:18 Karthik S description In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be { "inventory": { "cpu_topology": { "numa_nodes": { "numa_node_0": [<list of CPUs in NUMA node 0>], "numa_node_1": [<list of CPUs in NUMA node 1>] }, ... } } } Example: { "inventory": { "cpu_topology": { "numa_nodes": { "numa_node_0": [0,1,2,3], "numa_node_1": [4,5,6,7] }, ... } } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be { "inventory": { "cpu_topology": { "sibling": [ [ <first set of sibling threads>], [ <2nd set of siblings> ], ... ], ... } } } Example: { "inventory": { "cpu_topology": { "sibling": [ [0,1], [2,3], [4,5], [6,7] ], ... } } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node The modified data structure shall be {   "inventory": {     "interfaces": [       {         "businfo": "<PCI address of the interface>",         "numa_node": <numa node associated with this PCI device>         ...       },       ...     ]   } } Example: {   "inventory": {     "interfaces": [       {         "businfo": "0000:01:00.0",         "numa_node": 0         ...       },       ...     ]   } } In order to obtain better performance in using DPDK, node has to be configured by considering the numa node information. DPDK PMD should be associated with logical CPUs from the specific numa node, where the DPDK interface is associated. Also, in case of hyper threaded nodes, providing the siblings of a core will be useful in deciding the logical CPUs list for PMD. For achieving this configuration, we already have handful of information in the introspected data. Additionally with below set of information, we can make better decisions in configuring the DPDK parameters of the nodes: * List of logical CPU numbers associated with the numa node - Today during the introspection, most of the data provided by “lscpu” is logged, but the NUMA node and CPU list is not added. The modified data structure shall be {   "inventory": {     "cpu_topology": {       "numa_nodes": {         "numa_node_0": [<list of CPUs in NUMA node 0>],         "numa_node_1": [<list of CPUs in NUMA node 1>]       },       ...     }   } } Example: {   "inventory": {     "cpu_topology": {       "numa_nodes": {         "numa_node_0": [0,1,2,3],         "numa_node_1": [4,5,6,7]       },       ...     }   } } * Siblings list for logical CPUs - Extract the siblings details from /sys/devices/system/cpu/cpu<n>/topology/thread_siblings_list for all logical CPUs The modified data structure shall be {   "inventory": {     "cpu_topology": {       "sibling": [         [ <first set of sibling threads>],         [ <2nd set of siblings> ],         ...       ],       ...     }   } } Example: {   "inventory": {     "cpu_topology": {       "sibling": [         [0,1],         [2,3],         [4,5],         [6,7]       ],       ...     }   } } * Numa node number for all PCI device (Network Interfaces) - Extract the numa node for the PCI devices from /sys/bus/pci/devices/<PCI address>/numa_node This change is being addressed by https://review.openstack.org/#/c/369245
2016-12-02 18:34:56 Jay Faulkner bug task added ironic-inspector
2016-12-02 18:35:01 Jay Faulkner ironic-inspector: importance Undecided Wishlist
2016-12-02 18:35:03 Jay Faulkner ironic-python-agent: importance Undecided Wishlist
2016-12-09 15:29:56 OpenStack Infra ironic-inspector: status New In Progress
2016-12-09 15:29:56 OpenStack Infra ironic-inspector: assignee Karthik S (ksundara)
2016-12-13 19:42:06 Annie Lezil ironic-python-agent: status New In Progress
2017-02-09 12:10:19 OpenStack Infra ironic-python-agent: assignee Karthik S (ksundara) Jaganathan Palanisamy (jaganathanp)
2017-03-23 15:00:03 OpenStack Infra ironic-python-agent: assignee Jaganathan Palanisamy (jaganathanp) Karthik S (ksundara)
2017-03-28 11:10:23 OpenStack Infra ironic-python-agent: assignee Karthik S (ksundara) Jaganathan Palanisamy (jaganathanp)
2017-05-15 15:25:07 Sam Betts tags rfe rfe-approved
2017-05-22 13:13:23 OpenStack Infra ironic-python-agent: status In Progress Fix Released
2024-01-18 16:06:07 Iury Gregory Melo Ferreira ironic-inspector: status In Progress Invalid