Difference between revisions of "GPU Support"

From Open-IOV
Jump to navigation Jump to search
Line 9: Line 9:
!Model
!Model
!Libre Drivers
!Libre Drivers
!Partially Libre Drivers (binary blobs)
!Non-Libre Drivers
!Non-Libre Drivers
!Merged Host+Guest Acceleration
!Merged Host+Guest Acceleration
Line 20: Line 19:
|*HD
|*HD
|i915
|i915
|
|
|
|Yes
|Yes
Line 31: Line 29:
|*HD
|*HD
|i915
|i915
|
|
|
|Yes
|Yes
Line 42: Line 39:
|*HD
|*HD
|i915
|i915
|
|
|
|Yes
|Yes
Line 53: Line 49:
|*HD
|*HD
|i915
|i915
|
|
|
|Yes
|Yes
Line 64: Line 59:
|
|
|i915
|i915
|
|
|
|No
|No
Line 75: Line 69:
|Xe*
|Xe*
|i915
|i915
|
|
|
|
|
Line 87: Line 80:
|Xe*
|Xe*
|i915
|i915
|
|
|
|
|
Line 98: Line 90:
|*(see exceptions below)
|*(see exceptions below)
|Nouveau
|Nouveau
|
|Consumer Proprietary, Proprietary Mdev
|Consumer Proprietary, Proprietary Mdev
|Yes
|Yes
Line 109: Line 100:
|*
|*
|Nouveau
|Nouveau
|
|Consumer Proprietary, Proprietary Mdev
|Consumer Proprietary, Proprietary Mdev
|Yes
|Yes
Line 120: Line 110:
|*
|*
|Nouveau
|Nouveau
|
|Consumer Proprietary, Proprietary Mdev
|Consumer Proprietary, Proprietary Mdev
|Yes
|Yes
Line 131: Line 120:
|A*
|A*
|Nouveau (In Development)
|Nouveau (In Development)
|
|Consumer Proprietary, Proprietary Mdev
|Consumer Proprietary, Proprietary Mdev
|
|
Line 142: Line 130:
|RTX 30**
|RTX 30**
|Nouveau (In Development)
|Nouveau (In Development)
|
|Consumer Proprietary
|Consumer Proprietary
|In Development
|In Development
Line 152: Line 139:
|Tonga
|Tonga
|W7100
|W7100
|AMDGPU
|AMDGPU, GPU-IOV Module (Deprecated)
|GPU-IOV Module (Deprecated)
|AMDGPU-Pro
|AMDGPU-Pro
|No
|No
Line 164: Line 150:
|Tonga
|Tonga
|S71**
|S71**
|AMDGPU
|AMDGPU, GPU-IOV Module (Deprecated)
|GPU-IOV Module (Deprecated)
|AMDGPU-Pro
|AMDGPU-Pro
|No
|No
Line 176: Line 161:
|v340
|v340
|AMDGPU
|AMDGPU
|
|AMDGPU-Pro, GPU-IOV Module
|AMDGPU-Pro, GPU-IOV Module
|No
|No
Line 187: Line 171:
|v520
|v520
|AMDGPU
|AMDGPU
|
|AMDGPU-Pro, GPU-IOV Module
|AMDGPU-Pro, GPU-IOV Module
|No
|No

Revision as of 22:20, 1 April 2022

Abstract

The following page document will detail GPU Support for SR-IOV and VFIO-Mdev functionality.

Overview

Feature Matrix
Vendor Architecture Model Libre Drivers Non-Libre Drivers Merged Host+Guest Acceleration Hardware Mode Mdev (SR-IOV) VFIO-mdev support LibVF.IO Support
Intel 6th Generation (Skylake) *HD i915 Yes No Yes Yes
Intel 7th Generation (Kaby Lake) *HD i915 Yes No Yes Yes
Intel 8th Generation (Coffee Lake) *HD i915 Yes No Yes Yes
Intel 9th Generation (Cannon Lake) *HD i915 Yes No Yes Yes
Intel 10th Generation (Ice Lake) i915 No No No No
Intel 11th Generation (Tiger Lake) Xe* i915 Yes Yes
Intel 12th Generation

(Alder Lake)

Xe* i915 Yes Yes
Nvidia Maxell *(see exceptions below) Nouveau Consumer Proprietary, Proprietary Mdev Yes No Yes Yes
Nvidia Pascal * Nouveau Consumer Proprietary, Proprietary Mdev Yes No Yes Yes
Nvidia Turing * Nouveau Consumer Proprietary, Proprietary Mdev Yes No Yes Yes
Nvidia Ampere A* Nouveau (In Development) Consumer Proprietary, Proprietary Mdev Yes Yes Yes
Nvidia Ampere RTX 30** Nouveau (In Development) Consumer Proprietary In Development No Yes In Development
AMD Tonga W7100 AMDGPU, GPU-IOV Module (Deprecated) AMDGPU-Pro No Yes

(patched)

No Yes
AMD Tonga S71** AMDGPU, GPU-IOV Module (Deprecated) AMDGPU-Pro No Yes No Yes
AMD Vega v340 AMDGPU AMDGPU-Pro, GPU-IOV Module No Yes Unconfirmed Yes
AMD Navi v520 AMDGPU AMDGPU-Pro, GPU-IOV Module No Yes Unconfirmed Yes

Intel

This section will cover Mdev support on Intel GPUs.

Hardware

GPUs supporting GVT-g (software based mediation)[1]:

  • Intel HD Graphics 5500
  • Intel HD Graphics 6000
  • Intel HD Graphics 510
  • Intel HD Graphics 520
  • Intel HD Graphics 530
  • Intel HD Graphics 620
  • Intel HD Graphics 630
  • Intel UHD Graphics 620
  • Intel UHD Graphics 630

GPUs supporting SR-IOV (hardware based mediation):

  • Intel Iris Xe Graphics (Sources: [2][3])
  • Intel Iris Xe MAX Graphics

Drivers

Drivers with GVT-g support:

  • i915

Nvidia

This section will cover Mdev support on Nvidia GPUs.

Hardware

GPUs with official support for vGPU (Source: [4]):

  • NVIDIA A100 HGX 80GB
  • NVIDIA A100 PCIe 80GB (SR-IOV: 20VF [5])
  • NVIDIA A100X
  • NVIDIA A100 HGX 40GB
  • NVIDIA A100 PCIe 40GB (SR-IOV: 16VF [6])
  • NVIDIA A40 (SR-IOV: 32VF [7])
  • NVIDIA A30 (SR-IOV: 8VF [8])
  • NVIDIA A30X
  • NVIDIA A16 (SR-IOV: 16VF [9])
  • NVIDIA A10 (SR-IOV: 32VF [10])
  • NVIDIA A2 (SR-IOV: 16VF [11])
  • NVIDIA RTX A6000
  • NVIDIA RTX A5000
  • Quadro RTX 8000 (SR-IOV: 24 VF [12])
  • Quadro RTX 8000 passive
  • Quadro RTX 6000 (SR-IOV: 24 VF [13])
  • Quadro RTX 6000 passive
  • Tesla V100
  • Tesla T4 (SR-IOV: 16VF [14])
  • Tesla P100
  • Tesla P40
  • Tesla P6
  • Tesla P4
  • Tesla M60
  • Tesla M10
  • Tesla M6
  • GRID K2 (Citrix XenServer and VMware ESXi only)
  • GRID K1 (Citrix XenServer and VMware ESXi only)

Additionally supported GPUs with VGPU Unlock:

  • All(?) Volta based GPUs (V-series)
  • All(?) Turing based GPUs (20-series)
  • All(?) Pascal based GPUs (10-series)
  • Most Maxwell based GPUs (9-series) with the following notable exceptions:
    • GTX 970 (mixed FB regions)
    • Quadro M2000 (mixed FB regions)
    • Tesla M40 [15]

Drivers

The most widely used method of enabling Mdev functionality on Nvidia GPUs is via the use of Nvidia's proprietary enterprise driver package.

Nvidia's proprietary Mdev driver supports both SR-IOV as well as software based mediation. The appropriate mode is chosen between the two methods based on hardware architecture.

Licensing

Usage of the proprietary enterprise driver is subject to license fees.

AMD

This section will cover Mdev support on AMD GPUs.

Hardware

Supported GPUs:

  • AMD FirePro S7150
  • AMD Radeon Pro V520 [16]
  • AMD FirePro W7100 [15]

Drivers

The open source GIM driver supports AMD Tonga architecture GPUs such as the FirePro S7150/W7100. Modern kernel versions require pull request 24