Difference between revisions of "Hypervisor Support"

From Open-IOV
Jump to navigation Jump to search
(Carry the site-wide About/licensing message on every page (2026-10-12))
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{About message}}
{{Historical}}
{| class="wikitable"
|+
!Platform Hypervisor
!Virtual GPU support
!Memory Sharing APIs
!IOMMU Groups support
!PCI forwarding
!Mdev Support
!SR-IOV Support
!SIOV Support
|-
|KVM
|Yes
|IVSHMEM
|Yes
|Yes (via VFIO)
|Yes
|Yes
|In Development
|-
|Xen
|Yes
|Grant Tables
|No
|Yes (via [https://wiki.xenproject.org/wiki/Xen_PCI_Passthrough xen-pciback])
|No
|Yes
|Unknown
|-
|NVMM
|Unknown
|Unknown
|No
|Unknown
|No
|Unknown
|No
|}
== KVM ==
== KVM ==
This section will cover existing support in KVM for VFIO-Mdev and ongoing issues with it's existing implementation.
This section will cover existing support in KVM for VFIO-Mdev and ongoing issues with it's existing implementation.


=== Missing Functionality ===
=== Missing Functionality ===
 
Nested SR-IOV.
==== SR-IOV within VMs ====


== Xen ==
== Xen ==
This section will cover efforts to support the Xen hypervisor with open device mediation software.
This section will cover efforts to support the Xen hypervisor with open device mediation software.
XAPI docs for virtual GPUs can be read [https://xapi-project.github.io/xen-api/classes/vgpu_type.html here].


=== Mdev drivers outside Dom0 ===
=== Mdev drivers outside Dom0 ===
[https://xenbits.xen.org/docs/unstable/designs/launch/hyperlaunch.html Xen Hyperlaunch] aims to disaggregate Dom0's monolithic functions. This includes a discrete domain for device drivers.


=== Missing Functionality ===
=== Missing Functionality ===
 
IOMMU Groups (discussions around extending or reworking Xen's IOMMU to include IOMMU Groups is ongoing).
==== IOMMU Groups ====


=== Additional Documentation ===
=== Additional Documentation ===
Line 22: Line 65:


=== Missing Functionality ===
=== Missing Functionality ===
 
VFIO.
==== VFIO ====


=== Additional Documentation ===
=== Additional Documentation ===
For additional documentation read [https://blog.netbsd.org/tnf/entry/from_zero_to_nvmm From Zero to NVMM].
For additional documentation read [https://blog.netbsd.org/tnf/entry/from_zero_to_nvmm From Zero to NVMM].

Latest revision as of 04:29, 12 October 2026

An absence of critical technical documentation has historically slowed growth and adoption of developer ecosystems for GPU virtualization.

This CC-BY-4.0 licensed content can either be used with attribution, or used as inspiration for new documentation, created by GPU vendors for public commercial distribution as developer documentation.

Where possible, this documentation will clearly label dates and versions of observed-but-not-guaranteed behaviour vs. vendor-documented stable interfaces/behaviour with guarantees of forward or backward compatibility.

Historical page. This page documents an earlier project or architecture (the OpenMdev / LibVF.IO era, 2021–2023). It is retained for reference and is not part of the current Open-IOV stack. Current documentation starts at Documentation.

Platform Hypervisor Virtual GPU support Memory Sharing APIs IOMMU Groups support PCI forwarding Mdev Support SR-IOV Support SIOV Support
KVM Yes IVSHMEM Yes Yes (via VFIO) Yes Yes In Development
Xen Yes Grant Tables No Yes (via xen-pciback) No Yes Unknown
NVMM Unknown Unknown No Unknown No Unknown No

KVM

This section will cover existing support in KVM for VFIO-Mdev and ongoing issues with it's existing implementation.

Missing Functionality

Nested SR-IOV.

Xen

This section will cover efforts to support the Xen hypervisor with open device mediation software.

XAPI docs for virtual GPUs can be read here.

Mdev drivers outside Dom0

Xen Hyperlaunch aims to disaggregate Dom0's monolithic functions. This includes a discrete domain for device drivers.

Missing Functionality

IOMMU Groups (discussions around extending or reworking Xen's IOMMU to include IOMMU Groups is ongoing).

Additional Documentation

For additional documentation check the XenProject Wiki.

NVMM

This section will cover NetBSD's NVMM.

Missing Functionality

VFIO.

Additional Documentation

For additional documentation read From Zero to NVMM.