On 2018/12/18 下午4:20, yonglihe wrote:
Hi, guys
This spec needs input and discuss for move on.
Jay suggest we might be good to use a new sub node to hold topology stuff, it's option 2, here. And split the PCI stuff out of this NUMA thing spec, use a /devices node to hold all 'devices' stuff instead, then this node is generic and not only for PCI itself. I'm OK for Jay's suggestion, it contains more key words and seems crystal clear and straight forward. The problem is we need aligned about this. This spec need gain more input thanks, Jay, Matt. Regards Yongli He
Currently the spec is under reviewing: https://review.openstack.org/#/c/612256/8
Plus with POC code: https://review.openstack.org/#/c/621476/3
and related stein PTG discuss: https://etherpad.openstack.org/p/nova-ptg-stein start from line 897
NUMA topology had lots of information to expose, for saving you time to jumping into to the spec, the information need to return include NUMA related like: numa_node,cpu_pinning,cpu_thread_policy,cpuset,siblings, mem,pagesize,sockets,cores, threads, and PCI device's information.
Base on IRC's discuss, we may have 3 options about how to deal with those blobs:
1) include those directly in the server response details, like the released POC does: https://review.openstack.org/#/c/621476/3
2) add a new sub-resource endpoint to servers, most likely use key word 'topology' then: "GET /servers/{server_id}/topology" returns the NUMA information for one server.
3) put the NUMA info under existing 'diagnostics' API. "GET /servers/{server_id}/diagnostics" this is admin only API, normal user loss the possible to check their topology.
when the information put into diagnostics, they will be look like: { .... "numa_topology": { cells [ { "numa_node" : 3 "cpu_pinning": {0:5, 1:6}, "cpu_thread_policy": "prefer", "cpuset": [0,1,2,3], "siblings": [[0,1],[2,3]], "mem": 1024, "pagesize": 4096, "sockets": 0, "cores": 2, "threads": 2, }, ... ] # cells } "emulator_threads_policy": "share"
"pci_devices": [ { "address":"00:1a.0", "type": "VF", "vendor": "8086", "product": "1526" }, ] }
Regards Yongli He