[openstack-dev] vGPUs support for Nova - Implementation

Blair Bethwaite blair.bethwaite at gmail.com
Mon Oct 2 13:51:54 UTC 2017

On 29 September 2017 at 22:26, Bob Ball <bob.ball at citrix.com> wrote:
> The concepts of PCI and SR-IOV are, of course, generic, but I think out of principal we should avoid a hypervisor-specific integration for vGPU (indeed Citrix has been clear from the beginning that the vGPU integration we are proposing is intentionally hypervisor agnostic)

To be fair, what this proposal is doing is piggy-backing on Nova's
existing PCI functionality to expose Linux/KVM VFIO mdev, it just so
happens mdev was created for vGPU, but it was designed to extend to
other devices/things too.

> I also think there is value in exposing vGPU in a generic way, irrespective of the underlying implementation (whether it is DEMU, mdev, SR-IOV or whatever approach Hyper-V/VMWare use).

That is a big ask. To start with, all GPUs are not created equal, and
various vGPU functionality as designed by the GPU vendors is not
consistent, never mind the quirks added between different hypervisor
implementations. So I feel like trying to expose this in a generic
manner is, at least asking for problems, and more likely bound for

Nova already exposes plenty of hypervisor-specific functionality (or
functionality only implemented for one hypervisor), and that's fine.
Maybe there should be a something in OpenStack that would generically
manage vGPU-graphics and/or vGPU-compute etc, but I'm pretty sure it
would never be allowed into Nova :-).

Anyway, take all that with a grain of salt, because frankly I would
love to see this in sooner rather than later - even if it did have a
big "this might change in non-upgradeable ways" sticker on it.


More information about the OpenStack-dev mailing list