Difference between revisions of "GVM"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
[https://github.com/OpenMdev/GVM GVM] is a GPU Virtualization Machine for Linux on x86 hardware. 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. | [https://github.com/OpenMdev/GVM GVM] is a GPU Virtualization Machine for Linux on x86 hardware. 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. | ||
== | == Plan == | ||
# Survey available information on Mdev/SR-IOV internals. | # Survey available information on Mdev/SR-IOV internals. | ||
# Comprehensive documentation of [https://openmdev.io/index.php/Mediated_Device_Internals Mediated Device Internals] (in progress). | # Comprehensive documentation of [https://openmdev.io/index.php/Mediated_Device_Internals Mediated Device Internals] (in progress). | ||
# Meta-analysis of collected Mediated Device Internals documentation. | # 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. | # Adjustments to GVM Planning/Software Programming. | ||
== Software Programming == | == Software Programming == | ||
# Creation of simple gvm.ko | # 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). | ||
# 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.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. | # Creation of gvm-intel.ko, gvm-amd.ko, gvm-nvidia.ko processor submodules. |
Revision as of 20:08, 22 April 2022
GVM is a GPU Virtualization Machine for Linux on x86 hardware. 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.
Plan
- Survey available information on Mdev/SR-IOV internals.
- Comprehensive documentation of Mediated Device Internals (in progress).
- 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
- Creation of simple gvm.ko core based on Mediated Device Internals meta-analysis (common interrupt and memory management functions suitable for use with driver submodules).
- 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.