Difference between revisions of "Articles"

From Open-IOV
Jump to navigation Jump to search
(Added link to merged drivers page.)
(104 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page indexes the articles contained within Open-IOV.
If you're new to GPU Virtualization start by reading the '''[[Introduction]]''' article.
=== Start Here ===
[[Introduction]]
[https://open-iov.org/index.php/Open-IOV:About About Open-IOV (CC-BY-4.0)]


===Abstract===
===Abstract===
[https://openmdev.io/index.php/Introductory_Concepts_&_Definitions Introductory Concepts & Definitions]
[[Introductory Concepts & Definitions|Glossary]]
 
[[Virtualization Fundamentals]]


[[Merged Drivers]]
[[Merged Drivers]]
===Guides===
 
[https://openmdev.io/index.php/LibVF.IO_Setup_Guide LibVF.IO Setup Guide]
=== Design Documents ===
[[Virtual IO Internals|Virtual I/O Internals]]
 
[[GPU Driver Internals]]
=== Driver Integration Documents ===
[https://open-iov.org/index.php/OpenRM Nvidia]
 
[[Intel SR-IOV APIs|Intel]]
 
[https://open-iov.org/index.php/AMDGPU AMD]
 
===Projects===
[https://open-iov.org/index.php/LibVF.IO LibVF.IO]
 
[[Hyperborea]]
 
[https://open-iov.org/index.php/LIME_Is_Mediated_Emulation LIME Is Mediated Emulation]
 
[https://open-iov.org/index.php/Looking_Glass_KVMFR Looking Glass]
 
[https://openxt.atlassian.net/wiki/spaces/OD/pages/10747915/What+is+OpenXT OpenXT]
 
[https://gitlab.com/vglass OpenXT: vGlass]
 
[https://github.com/OpenXT/surfman OpenXT: Surfman (legacy DRM)]
 
[https://www.bromium.com/opensource/ Bromium/uXen]
 
[https://xenproject.org/help/documentation/ Xen Project]
 
[https://www.qubes-os.org/doc/ Qubes OS]
 
[https://projectacrn.github.io/2.1/tutorials/using_celadon_as_uos.html Intel Celadon]
 
[https://open-iov.org/index.php/VGPU_Unlock vGPU_Unlock]
 
[[LibRM]]
=== Device Support===
[[GPU Support]]
 
[[CPU Support]]
 
[[GPU Firmware]]
 
=== Software Support ===
[https://open-iov.org/index.php/Hypervisor_Support Hypervisor Support]
 
[[GPU Software Bill Of Materials (SBOM)]]
 
=== API Documentation ===
 
==== Kernel APIs ====
[https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api Kernel.org Driver Core Documentation]
 
[https://docs.microsoft.com/en-us/windows-hardware/drivers/display/iommu-based-gpu-isolation NT Kernel (Windows) IOMMU-based GPU Isolation]
 
[https://elixir.bootlin.com/linux/latest/source/Documentation/driver-api/vfio.rst VFIO] - [https://github.com/torvalds/linux/blob/master/include/uapi/linux/vfio.h vfio.h] - [https://elixir.bootlin.com/linux/latest/source/include/linux/mdev.h mdev.h]
 
[https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/vfio-mediated-device.rst?h=driver-core-next&id=7de3697e9cbd4bd3d62bafa249d57990e1b8f294 VFIO Mediated Device]
==== Driver APIs ====
[https://projectacrn.github.io/2.1/api/GVT-g_api.html i915 GVT-g API]
 
[https://nouveau.freedesktop.org/Development.html Nouveau Tools & API]
==== Sample Code ====
GPLv2 sources mirrored from [https://elixir.bootlin.com/linux/latest/source/samples/vfio-mdev/ elixir.bootlin.com] with [https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/Makefile simple makefile changes].
 
[https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/mtty.c mtty.c] - [https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/mdpy.c mdpy.c] - [https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/mdpy-fb.c mdpy-fb.c] - [https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/mdpy-defs.h mdpy-defs.h] - [https://github.com/OpenMdev/VFIO-Mdev_Samples/blob/master/mbochs.c mbochs.c]
 
==== Virtualization APIs ====
[https://open-iov.org/index.php/Mdev-GPU#Mdev-CLI GVM/Mdev-CLI API]
 
[https://qemu-project.gitlab.io/qemu/interop/qemu-qmp-ref.html QEMU Machine Protocol (QMP) Reference Manual]
 
[https://projectacrn.github.io/2.1/developer-guides/hld/ivshmem-hld.html Inter-VM Shared Memory (IVSHMEM)]
===User Guides===
[https://arccompute.com/blog/libvfio-commodity-gpu-multiplexing/ LibVF.IO Setup Guide]


[https://looking-glass.io/docs/stable/ Looking Glass Quickstart Guide]
[https://looking-glass.io/docs/stable/ Looking Glass Quickstart Guide]
[https://github.com/intel/gvt-linux/wiki/GVTg_Setup_Guide Intel GVT-g Setup Guide]
[https://github.com/GPUOpen-LibrariesAndSDKs/MxGPU-Virtualization/tree/master/docs AMD GPU-IOV Module Docs]


[https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF PCI passthrough via OVMF]
[https://wiki.archlinux.org/title/PCI_passthrough_via_OVMF PCI passthrough via OVMF]


[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/index RedHat Virtualization Deployment and Administration Guide]
[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/index RedHat Virtualization Guide]
===Support===
 
[https://openmdev.io/index.php/GPU_Support GPU Support]
=== Developer Guides ===
[https://rayanfam.com/tags/hypervisor/ Hypervisor From Scratch]
 
[https://lwn.net/Kernel/LDD3/ Linux Device Drivers (3rd Edition)]


[https://openmdev.io/index.php/CPU_Support CPU Support]
[https://dri.freedesktop.org/docs/drm/gpu/ GPU Driver Developer's Guide]


[https://openmdev.io/index.php/Hypervisor_Support Hypervisor Support]
[https://dri.freedesktop.org/docs/drm/PCI/pci.html# How To Write PCI Drivers]
===Projects===
 
[https://openmdev.io/index.php/Looking_Glass_KVMFR Looking Glass]
[https://doc.dpdk.org/guides-16.04/prog_guide/ivshmem_lib.html Data Plane Development Kit: IVSHMEM Programming Guide]
 
=== Specifications ===
[https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/tlfs/tlfs Hyper-V Hypervisor Top Level Functional Specification (TLFS)]
 
=== Communities & Mailing Lists ===
[https://discord.gg/Rb9K9DYxKK Open-IOV Discord]


[https://openmdev.io/index.php/Qubes_OS Qubes OS]
[https://lists.freedesktop.org/mailman/listinfo/intel-gfx Intel-gfx Mailing List]


[https://openmdev.io/index.php/LibVF.IO LibVF.IO]
[https://lists.freedesktop.org/mailman/listinfo/nouveau Nouveau Mailing List]


[https://openmdev.io/index.php/Scream Scream]
[https://lists.freedesktop.org/mailman/listinfo/amd-gfx AMD-gfx Mailing List]


[https://openmdev.io/index.php/Intel_Project_Celadon Intel Celadon]
[https://listman.redhat.com/mailman/listinfo/vfio-users VFIO-users Mailing List]


[https://openmdev.io/index.php/VGPU_Unlock vGPU_Unlock]
[https://forum.level1techs.com/c/software/vfio/132 <nowiki>Level1Techs Forum [VFIO Topic]</nowiki>]


[https://openmdev.io/index.php/Virgl_3D_GPU_Project Virgl 3D GPU Project]
[https://old.reddit.com/r/VFIO/ VFIO Subreddit]

Revision as of 20:54, 2 May 2023

This page indexes the articles contained within Open-IOV.

If you're new to GPU Virtualization start by reading the Introduction article.

Start Here

Introduction

About Open-IOV (CC-BY-4.0)

Abstract

Glossary

Virtualization Fundamentals

Merged Drivers

Design Documents

Virtual I/O Internals

GPU Driver Internals

Driver Integration Documents

Nvidia

Intel

AMD

Projects

LibVF.IO

Hyperborea

LIME Is Mediated Emulation

Looking Glass

OpenXT

OpenXT: vGlass

OpenXT: Surfman (legacy DRM)

Bromium/uXen

Xen Project

Qubes OS

Intel Celadon

vGPU_Unlock

LibRM

Device Support

GPU Support

CPU Support

GPU Firmware

Software Support

Hypervisor Support

GPU Software Bill Of Materials (SBOM)

API Documentation

Kernel APIs

Kernel.org Driver Core Documentation

NT Kernel (Windows) IOMMU-based GPU Isolation

VFIO - vfio.h - mdev.h

VFIO Mediated Device

Driver APIs

i915 GVT-g API

Nouveau Tools & API

Sample Code

GPLv2 sources mirrored from elixir.bootlin.com with simple makefile changes.

mtty.c - mdpy.c - mdpy-fb.c - mdpy-defs.h - mbochs.c

Virtualization APIs

GVM/Mdev-CLI API

QEMU Machine Protocol (QMP) Reference Manual

Inter-VM Shared Memory (IVSHMEM)

User Guides

LibVF.IO Setup Guide

Looking Glass Quickstart Guide

Intel GVT-g Setup Guide

AMD GPU-IOV Module Docs

PCI passthrough via OVMF

RedHat Virtualization Guide

Developer Guides

Hypervisor From Scratch

Linux Device Drivers (3rd Edition)

GPU Driver Developer's Guide

How To Write PCI Drivers

Data Plane Development Kit: IVSHMEM Programming Guide

Specifications

Hyper-V Hypervisor Top Level Functional Specification (TLFS)

Communities & Mailing Lists

Open-IOV Discord

Intel-gfx Mailing List

Nouveau Mailing List

AMD-gfx Mailing List

VFIO-users Mailing List

Level1Techs Forum [VFIO Topic]

VFIO Subreddit