Difference between revisions of "GVM"

From Open-IOV
Jump to navigation Jump to search
 
(19 intermediate revisions by the same user not shown)
Line 1: Line 1:
[https://github.com/OpenMdev/GVM GVM] is a GPU Virtualization Machine for Linux on x86 hardware.
'''GVM''' is a '''GPU Virtual Machine''' for IOMMU-capable computers such as x86 and ARM.


It consists of a loadable kernel module, gvm.ko, that provides the core virtualization infrastructure and a processor specific module, gvm-intel.ko, gvm-amd.ko, gvm-nvidia.ko.
== GVM Components ==
'''Mdev-GPU''' source code can be found [https://github.com/Arc-Compute/Mdev-GPU here].


== Plan ==
Additional GVM components will be documented and made open source over time.


# Survey available information on Mdev/SR-IOV internals (rough notes, sketches). '''(in progress)'''
== Design & Documentation ==
# Comprehensive documentation of [https://openmdev.io/index.php/Mediated_Device_Internals Mediated Device Internals]. '''(in progress)'''
Comprehensive documentation of I/O Virtualization functionality can be found on the [https://openmdev.io/index.php/Mediated_Device_Internals '''Mediated Device Internals'''] page.
# Meta-analysis of collected Mediated Device Internals documentation (draw diagrams to explore first principles concepts, come up with working abstractions about device mediation for use with C code).
# Adjustments to GVM Planning/Software Programming.


== Software Programming ==
Documentation of the GVM Project's Mdev-GPU library, daemons, and CLI tools can be found at [https://gvm-docs.openmdev.io/mdev-gpu/ https://gvm-docs.openmdev.io/mdev-gpu]


# Creation of simple gvm.ko core based on [https://openmdev.io/index.php/Mediated_Device_Internals Mediated Device Internals] meta-analysis (common interrupt and memory management functions suitable for use with driver submodules).
== Community ==
# Creation of gvm.ko submodule interface (suitable for use with interchangeable processor modules such as gvm-intel.ko, gvm-amd.ko, gvm-nvidia.ko).
 
# Creation of gvm-intel.ko, gvm-amd.ko, gvm-nvidia.ko processor submodules.
=== IRC ===
'''#gvm''' and '''#gvm-devel''' on oftc.net
 
=== Discord ===
https://discord.gg/Rb9K9DYxKK

Latest revision as of 21:00, 5 July 2022

GVM is a GPU Virtual Machine for IOMMU-capable computers such as x86 and ARM.

GVM Components

Mdev-GPU source code can be found here.

Additional GVM components will be documented and made open source over time.

Design & Documentation

Comprehensive documentation of I/O Virtualization functionality can be found on the Mediated Device Internals page.

Documentation of the GVM Project's Mdev-GPU library, daemons, and CLI tools can be found at https://gvm-docs.openmdev.io/mdev-gpu

Community

IRC

#gvm and #gvm-devel on oftc.net

Discord

https://discord.gg/Rb9K9DYxKK