Distribute PCI Requests Across Multiple Devices

Registered by Brent Eagles on 2015-05-26

PCI requests are provisioned in a list based fashion. In SR-IOV networking devices, a set of candidate virtual functions can span multiple physical functions and physical ports. Distributing single and multiple device requests across multiple physical functions provides:

  * Better load distribution across available links.

  * Provides L2 redundancy when multiple devices are allocated on behalf of a single guest.

Blueprint information

Status:
Not started
Approver:
John Garbutt
Priority:
Low
Drafter:
Brent Eagles
Direction:
Needs approval
Assignee:
Roman Bogorodskiy
Definition:
Pending Approval
Series goal:
None
Implementation:
Not started
Milestone target:
milestone icon next

Related branches

Sprints

Whiteboard

Related spec:

https://review.openstack.org/#/c/142094/

Gerrit topic: https://review.openstack.org/#q,topic:bp/distribute-pci-allocation,n,z

Addressed by: https://review.openstack.org/142094
    Distribute PCI Requests Across Multiple Devices

Some questions that need to be answered for the spec:

- What are the implications with respect to NUMA?
- What is the expectation/behavior when multiple PFs map to a single physical link?
- Do we need configuration on this? What form should it take (flavor, config, etc)?
- Should distribution be the default behavior and should the inability to distribute result in a failure? (Actually, just asking this it would seem wrong to fail by default at the beginning because that breaks backwards compatibility - disable by default and figure out some deprecation cycle?)
- Implications on migration?

Pragmatic questions for planning and implementation:
- What cross-cutting efforts are underway that need to be considered (e.g. refactoring, moving to an oslo lib for something, does microversions come into play anywhere, etc.)
- Who can test it for real?

As there is no code up for review, removing this blueprint from mitaka, as part of the non-priority Feature Freeze. For more details please see: http://docs.openstack.org/developer/nova/process.html --johnthetubaguy 2015.01.15

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.