diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-02 02:50:38 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-02 02:50:38 -0400 |
| commit | 0054d3acbc3017d2a535239f8153d3c99f7abc18 (patch) | |
| tree | 670793077dfc7631d8f6c56179c44a1ec1bc91d1 /wiki | |
| parent | 559415eb28bf9bf3d7525cbc27c2cfbaeffd9820 (diff) | |
| download | open-iov-0054d3acbc3017d2a535239f8153d3c99f7abc18.tar.gz open-iov-0054d3acbc3017d2a535239f8153d3c99f7abc18.zip | |
docs: add complete SBOM, ignore local deployment resources, remove stale third-party references
Diffstat (limited to 'wiki')
12 files changed, 53 insertions, 299 deletions
diff --git a/wiki/GPU_SBOM.md b/wiki/GPU_SBOM.md index a277802..f7df955 100644 --- a/wiki/GPU_SBOM.md +++ b/wiki/GPU_SBOM.md @@ -1,264 +1,18 @@ -::: {#mw-page-base .noprint} -::: - -::: {#mw-head-base .noprint} -::: - -::: {#content .mw-body role="main"} -[]{#top} - -::: {#siteNotice} -::: - -::: mw-indicators -::: - -# GPU Software Bill Of Materials (SBOM) {#firstHeading .firstHeading} - -> **Imported 2023 material — superseded.** This page is an archived copy of the -> previous project wiki (circa 2023) and is kept for historical reference. -> Current documentation: -> [`../docs/03-architecture/`](../docs/03-architecture/) and -> [`../docs/09-reference/`](../docs/09-reference/). - -::: {#bodyContent .vector-body} -::: {#siteSub .noprint} -From Open-IOV -::: - -::: {#contentSub} -::: {.mw-revision .warningbox} -::: {#mw-revision-info} -Revision as of 14:58, 13 June 2023 by -[Arthur](./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html "User:Arthur (page does not exist)"){.new -.mw-userlink} -[([talk](./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html "User talk:Arthur (page does not exist)"){.new -.mw-usertoollinks-talk} \| -[contribs](index.php/Special:Contributions/Arthur.html "Special:Contributions/Arthur"){.mw-usertoollinks-contribs})]{.mw-usertoollinks} -[(Updated Nvidia VGX vGPU version to 15.2 in GPU SBOM.)]{.comment} -::: - -::: {#mw-revision-nav} -([diff](https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=prev&oldid=23786 "GPU Software Bill Of Materials (SBOM)")) -[← Older -revision](https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&direction=prev&oldid=23786 "GPU Software Bill Of Materials (SBOM)") -\| Latest revision (diff) \| Newer revision → (diff) -::: -::: -::: - -::: {#contentSub2} -::: - -::: {#jump-to-nav} -::: - -[Jump to -navigation](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html#mw-head){.mw-jump-link} -[Jump to -search](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html#searchInput){.mw-jump-link} - -::: {#mw-content-text .mw-body-content .mw-content-ltr lang="en" dir="ltr"} -::: mw-parser-output -This page will keep a running list of components used to achieve GPU -Virtualization. - -> An absence of critical technical documentation has historically slowed -> growth and adoption of developer ecosystems for GPU virtualization. -> -> This -> [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/){.external -> .text rel="nofollow"} 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. - - ------------- ----------------------------------------------------------------------------------------------------------------------------------------------- ------------- ----------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------- ----------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - Vendor Component Description Version OSS or Blob Filesize Vendor Docs Release Date Interfaces / APIs Notes - Microsoft Indirect Display Driver (IDD) Driver [OSS](https://github.com/Microsoft/Windows-driver-samples/tree/main/video/IndirectDisplay){.external .text rel="nofollow"} [Indirect Display Driver Overview](https://learn.microsoft.com/en-us/windows-hardware/drivers/display/indirect-display-driver-model-overview){.external .text rel="nofollow"} [UMDF](https://learn.microsoft.com/en-us/windows-hardware/drivers/wdf/overview-of-the-umdf){.external .text rel="nofollow"}, [KMDF](https://learn.microsoft.com/en-us/windows-hardware/drivers/kernel/){.external .text rel="nofollow"} The Indirect Display Driver (IDD) enables GPUs to render graphics at arbitrary resolutions without a physical display connected on Windows OS systems. - RedHat vfio_pci Driver 6.2-rc1 [OSS](https://github.com/torvalds/linux/tree/master/drivers/vfio/pci){.external .text rel="nofollow"} in-kernel [RedHat](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/5/html/virtualization/chap-virtualization-pci_passthrough){.external .text rel="nofollow"}, [kernel.org](https://docs.kernel.org/driver-api/vfio.html){.external .text rel="nofollow"} 2022.12.15 [irqfd](index.php/Virtual_I/O_Internals.html#Instruction_Execution){.external .text rel="nofollow"}, [ioeventfd](index.php/Virtual_I/O_Internals.html#Instruction_Execution){.external .text rel="nofollow"}, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"} Reference VFIO Stub driver used for discrete assignment of IO, and assignment of some SR-IOV-backed vGPU devices into virtual machines. This driver is commonly replaced with a vendor built VFIO interface with differing memory management and/or page pinning mechanisms which are specific to the vGPU software internals. - Mediated Core (mdev.ko) Driver 6.2-rc1 OSS 0.044 MB [kernel.org](https://docs.kernel.org/driver-api/vfio-mediated-device.html){.external .text rel="nofollow"} 2016.xx.xx [irqfd](index.php/Virtual_I/O_Internals.html#Instruction_Execution){.external .text rel="nofollow"}, [ioeventfd](index.php/Virtual_I/O_Internals.html#Instruction_Execution){.external .text rel="nofollow"}, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"}, [Type 1 IOMMU](index.php/Virtual_I/O_Internals.html#Mediated_DMA_Translations){.external .text rel="nofollow"} The Mediated Core driver provides a common interface for mediated device management that can be used by drivers of different devices. It is an IOMMU/device-agnostic framework for exposing direct device access to user space in a secure, IOMMU-protected environment (based on VFIO). - guest communication daemon Daemon 0.1.0 [OSS](https://){.external .text rel="nofollow"} [](){.external .text rel="nofollow"} 2023.02.08 [Virtio-Serial](https://fedoraproject.org/wiki/Features/VirtioSerial){.external .text rel="nofollow"}, CLI Handles IO to and from guests and the host using Virtio-Serial to handle multiple different guest modules. - mdev management CLI 1.0 [OSS](https://){.external .text rel="nofollow"} 0.084 MB [](){.external .text rel="nofollow"} 2023.01.06 CLI, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"}, [RMAPI](index.php/GPU_Driver_Internals.html#RM_API){.external .text rel="nofollow"}, [Mediated Core](index.php/Virtual_I/O_Internals.html#Mediated_Core){.external .text rel="nofollow"} Configures the the [nvidia-vgpu-mgr](index.php/GPU_Driver_Internals.html#nvidia-vgpu-mgr){.external .text rel="nofollow"} process. - Intel i915 SR-IOV Driver [5.15](https://github.com/intel/linux-intel-lts/tree/5.15/ADL-linux-ER){.external .text rel="nofollow"} OSS in-kernel Intel\'s open source GPU driver for [GuC](index.php/GPU_Firmware.html#GuC){.external .text rel="nofollow"}-equipped graphics accelerators. - [GuC](index.php/GPU_Firmware.html#GuC){.external .text rel="nofollow"} μOS Firmware Blob IOMMU Interrupts, Power Management Interrupts, [GTT](index.php/GPU_Driver_Internals.html#GTT_(Graphics_Translation_Table)){.external .text rel="nofollow"} Handles scheduling, and power management. - HuC [GTT](index.php/GPU_Driver_Internals.html#GTT_(Graphics_Translation_Table)){.external .text rel="nofollow"} Handles video encoding/decoding. - [Display Virtualization for Windows OS](index.php/GPU_Driver_Internals.html#Display_Surface_Virtualization_2){.external .text rel="nofollow"} Driver [791](https://github.com/intel/Display-Virtualization-for-Windows-OS/releases/){.external .text rel="nofollow"} [OSS](https://github.com/intel/Display-Virtualization-for-Windows-OS){.external .text rel="nofollow"} [github.com/intel/Display-Virtualization-for-Windows-OS/blob/main/Readme.txt](https://github.com/intel/Display-Virtualization-for-Windows-OS/blob/main/Readme.txt){.external .text rel="nofollow"} [udmabuf](https://github.com/ikwzm/udmabuf){.external .text rel="nofollow"}, [UMDF](https://learn.microsoft.com/en-us/windows-hardware/drivers/wdf/overview-of-the-umdf){.external .text rel="nofollow"}, [KMDF](https://learn.microsoft.com/en-us/windows-hardware/drivers/kernel/){.external .text rel="nofollow"} Intel\'s \'Display Virtualization for Windows OS\' provides a virtual pixel surface used for hardware graphics rendering using Microsoft\'s open source \'Indirect Display Driver (IDD)\'. Display virtualization for Windows OS makes use of display memory sharing primitives provided in-driver by the i915 host. - Nvidia [OpenRM](index.php/OpenRM.html "OpenRM") Driver 525.85.12 OSS [github.com/NVIDIA/open-gpu-kernel-modules/blob/main/README.md](https://github.com/NVIDIA/open-gpu-kernel-modules/blob/main/README.md){.external .text rel="nofollow"} 2023.01.31 Nvidia\'s open source GPU driver for [GSP](index.php/GPU_Firmware.html#GSP){.external .text rel="nofollow"}-equipped graphics accelerators. - [GSP](index.php/GPU_Firmware.html#GSP){.external .text rel="nofollow"} RM (uproc) Firmware Blob 2023.01.31 RPC Embedded firmware based on [LibOS](https://lwn.net/Articles/637658/){.external .text rel="nofollow"} containing the [RM Core](index.php/GPU_Driver_Internals.html#RM_Core){.external .text rel="nofollow"}. - Falcon/NvRISC (uproc) FBIF (Frame Buffer Interface) / GMMU Embedded firmware which handles many aspects of the device including configuring the GPU\'s GMMU controller. - nvidia-vgpud Daemon [v15.2](https://docs.nvidia.com/grid/15.0/whats-new-vgpu/index.html){.external .text rel="nofollow"} Blob 0.108 MB [docs.nvidia.com/grid](https://docs.nvidia.com/grid/index.html){.external .text rel="nofollow"} 2023.01.xx CLI, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"}, [RMAPI](index.php/GPU_Driver_Internals.html#RM_API){.external .text rel="nofollow"}, [Mediated Core](index.php/Virtual_I/O_Internals.html#Mediated_Core){.external .text rel="nofollow"} Configures the the [nvidia-vgpu-mgr](index.php/GPU_Driver_Internals.html#nvidia-vgpu-mgr){.external .text rel="nofollow"} process. - nvidia-vgpu-mgr 0.132 MB 2023.01.xx [vmiop](index.php/GPU_Driver_Internals.html#vmiop){.external .text rel="nofollow"}, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"}, [RMAPI](index.php/GPU_Driver_Internals.html#RM_API){.external .text rel="nofollow"}, [vRPC](index.php/GPU_Driver_Internals.html#Guest_kernel_(nvidia.ko)){.external .text rel="nofollow"}, pRPC, [Mediated Core](index.php/Virtual_I/O_Internals.html#Mediated_Core){.external .text rel="nofollow"} Handles IO to and from guest RM, host RM, and hardware. - libnvidia-vgpu.so Library 3.1 MB 2023.01.xx [vmiop](index.php/GPU_Driver_Internals.html#vmiop){.external .text rel="nofollow"}, [RMAPI](index.php/GPU_Driver_Internals.html#RM_API){.external .text rel="nofollow"}, [Mediated Core](index.php/Virtual_I/O_Internals.html#Mediated_Core){.external .text rel="nofollow"} Handles IO to and from guest RM, host RM, and hardware. Contains circular dependancies with [nvidia-vgpu-mgr](index.php/GPU_Driver_Internals.html#nvidia-vgpu-mgr){.external .text rel="nofollow"}. - nvidia-vgpu-vfio.ko Driver 0.108 MB 2023.01.xx [Type 1 IOMMU](index.php/Virtual_I/O_Internals.html#Mediated_DMA_Translations){.external .text rel="nofollow"}, [irqfd, ioeventfd](index.php/Virtual_I/O_Internals.html#Instruction_Execution){.external .text rel="nofollow"}, [IOCTL](https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git/tree/Documentation/driver-api/ioctl.rst){.external .text rel="nofollow"}, [Mediated Core](index.php/Virtual_I/O_Internals.html#Mediated_Core){.external .text rel="nofollow"} Handles incremental memory mapping (non-page pinning per the standard vfio-pci driver). - ------------- ----------------------------------------------------------------------------------------------------------------------------------------------- ------------- ----------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------- ----------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ -------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - - : Component Table - -## [More Information]{#More_Information .mw-headline} - -1. [Nvidia RISC-V - Story](https://riscv.org/wp-content/uploads/2016/07/Tue1100_Nvidia_RISCV_Story_V2.pdf){.external - .text rel="nofollow"} -2. [](){.external .text - rel="nofollow"} -3. [Intel Graphics Programmer\'s Reference Manuals - (PRM)](https://01.org/linuxgraphics/documentation/hardware-specification-prms){.external - .text rel="nofollow"} -4. [i915: Hardware Contexts (and some bits about - batchbuffers)](https://bwidawsk.net/blog/2013/1/i915-hardware-contexts-and-some-bits-about-batchbuffers/){.external - .text rel="nofollow"} -5. [i915: The Global GTT Part - 1](https://bwidawsk.net/blog/2014/6/the-global-gtt-part-1/){.external - .text rel="nofollow"} -6. [i915: Aliasing PPGTT Part - 2](https://bwidawsk.net/blog/2014/6/aliasing-ppgtt-part-2/){.external - .text rel="nofollow"} -7. [i915: True PPGTT Part - 3](https://bwidawsk.net/blog/2014/7/true-ppgtt-part-3/){.external - .text rel="nofollow"} -8. [i915: Future PPGTT Part 4 (Dynamic page table allocations, 64 bit - address space, GPU \"mirroring\", and yeah, something about relocs - too)](https://bwidawsk.net/blog/2014/7/future-ppgtt-part-4-dynamic-page-table-allocations-64-bit-address-space-gpu-mirroring-and-yeah-something-about-relocs-too/){.external - .text rel="nofollow"} -9. [i915: Security of the Intel Graphics Stack - Part 1 - - Introduction](https://igor-blue.github.io/2021/02/10/graphics-part1.html){.external - .text rel="nofollow"} -10. [i915: Security of the Intel Graphics Stack - Part 2 - FW \<-\> - GuC](https://igor-blue.github.io/2021/02/24/graphics-part2.html){.external - .text rel="nofollow"} -11. [i915: An Introduction to Intel GVT-g (with new - architecture)](https://01.org/sites/default/files/documentation/an_introduction_to_intel_gvt-g_for_external.pdf){.external - .text rel="nofollow"} -::: - -::: printfooter -Retrieved from -\"[https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials\_(SBOM)&oldid=23786](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html){dir="ltr"}\" -::: -::: - -::: {#catlinks .catlinks .catlinks-allhidden mw="interface"} -::: -::: -::: - -::: {#mw-navigation} -## Navigation menu - -::: {#mw-head} -### Personal tools {#p-personal-label .vector-menu-heading} - -::: vector-menu-content -- [[Log - in](https://open-iov.org/index.php?title=Special:UserLogin&returnto=GPU+Software+Bill+Of+Materials+%28SBOM%29&returntoquery=oldid%3D23786 "You are encouraged to log in; however, it is not mandatory [o]"){accesskey="o"}]{#pt-login} -::: - -::: {#left-navigation} -### Namespaces {#p-namespaces-label .vector-menu-heading} - -::: vector-menu-content -- [[Page](index.php/GPU_Software_Bill_Of_Materials_(SBOM).html "View the content page [c]"){accesskey="c"}]{#ca-nstab-main} -- [[Discussion](https://open-iov.org/index.php?title=Talk:GPU_Software_Bill_Of_Materials_(SBOM)&action=edit&redlink=1 "Discussion about the content page (page does not exist) [t]"){rel="discussion" - accesskey="t"}]{#ca-talk} -::: - -### Variants [expanded]{.vector-menu-checkbox-expanded} [collapsed]{.vector-menu-checkbox-collapsed} {#p-variants-label .vector-menu-heading} - -::: vector-menu-content -::: -::: - -::: {#right-navigation} -### Views {#p-views-label .vector-menu-heading} - -::: vector-menu-content -- [[Read](index.php/GPU_Software_Bill_Of_Materials_(SBOM).html)]{#ca-view} -- [[View - source](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&action=edit.html "This page is protected. - You can view its source [e]"){accesskey="e"}]{#ca-viewsource} -- [[View - history](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&action=history.html "Past revisions of this page [h]"){accesskey="h"}]{#ca-history} -::: - -### More [expanded]{.vector-menu-checkbox-expanded} [collapsed]{.vector-menu-checkbox-collapsed} {#p-cactions-label .vector-menu-heading} - -::: vector-menu-content -::: - -::: {#p-search .vector-search-box role="search"} -<div> - -### Search - -::: {#simpleSearch search-loc="header-navigation"} -::: - -</div> -::: -::: -::: - -::: {#mw-panel} -::: {#p-logo role="banner"} -[](images/archive/c/c3/20221214193624!I915_Scheduling_Events_and_Requests.png.html "Visit the main page"){.mw-wiki-logo} -::: - -### Navigation {#p-navigation-label .vector-menu-heading} - -::: vector-menu-content -- [[Main - page](images/archive/c/c3/20221214193624!I915_Scheduling_Events_and_Requests.png.html "Visit the main page [z]"){accesskey="z"}]{#n-mainpage-description} -- [[Recent - changes](https://open-iov.org/index.php/Special:RecentChanges "A list of recent changes in the wiki [r]"){accesskey="r"}]{#n-recentchanges} -- [[Random - page](index.php/Special:Random.html "Load a random page [x]"){accesskey="x"}]{#n-randompage} -- [[Help about - MediaWiki](https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents)]{#n-help-mediawiki} -::: - -### Tools {#p-tb-label .vector-menu-heading} - -::: vector-menu-content -- [[What links - here](index.php/Special:WhatLinksHere/GPU_Software_Bill_Of_Materials_(SBOM).html "A list of all wiki pages that link here [j]"){accesskey="j"}]{#t-whatlinkshere} -- [[Related - changes](https://open-iov.org/index.php/Special:RecentChangesLinked/GPU_Software_Bill_Of_Materials_(SBOM) "Recent changes in pages linked from this page [k]"){rel="nofollow" - accesskey="k"}]{#t-recentchangeslinked} -- [[Special - pages](index.php/Special:SpecialPages.html "A list of all special pages [q]"){accesskey="q"}]{#t-specialpages} -- [[Printable - version](javascript:print(); "Printable version of this page [p]"){rel="alternate" - accesskey="p"}]{#t-print} -- [[Permanent - link](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html "Permanent link to this revision of the page")]{#t-permalink} -- [[Page - information](index.php%3Ftitle=GPU_Software_Bill_Of_Materials_(SBOM)&action=info.html "More information about this page")]{#t-info} -::: -::: -::: - -- [This page was last edited on 13 June 2023, at - 14:58.]{#footer-info-lastmod} - -```{=html} -<!-- --> -``` -- [[Privacy - policy](https://open-iov.org/index.php/Open-IOV:Privacy_policy "Open-IOV:Privacy policy")]{#footer-places-privacy} -- [[About - Open-IOV](index.php/Open-IOV:About.html "Open-IOV:About")]{#footer-places-about} -- [[Disclaimers](https://open-iov.org/index.php/Open-IOV:General_disclaimer "Open-IOV:General disclaimer")]{#footer-places-disclaimer} - -```{=html} -<!-- --> -``` -- [[{srcset="resources/assets/poweredby_mediawiki_132x47.png 1.5x, resources/assets/poweredby_mediawiki_176x62.png 2x" - width="88" height="31" - loading="lazy"}](https://www.mediawiki.org/)]{#footer-poweredbyico} +# GPU Software Bill Of Materials (SBOM) + +> **This page is superseded.** The previous content was an imported 2023 wiki +> survey of third-party GPU-virtualization components. The complete, +> repository-scoped SBOM now lives at: + +* **[`SBOM.md`](../SBOM.md)** — human-readable SBOM: primary component, + first-party components, bundled third-party components with SHA-256 hashes, + archived-documentation provenance, external build/run dependencies, + dependency graph, license/redistribution terms, and the NTIA + minimum-elements checklist. +* **[`sbom/open-iov-0.1.0.cdx.json`](../sbom/open-iov-0.1.0.cdx.json)** — + machine-readable CycloneDX 1.6 SBOM + (serial `urn:uuid:e626c5a1-9697-4546-bb2b-5b4feb58e922`). + +The SBOM covers every file tracked in this repository plus the external +components required to build, run and support it. NVIDIA drivers, GSP +firmware and CUDA packages are documented but **not distributed** here. diff --git a/wiki/open-iov.org/index.php/GPU_Software_Bill_Of_Materials_(SBOM).html b/wiki/open-iov.org/index.php/GPU_Software_Bill_Of_Materials_(SBOM).html index ae9ec87..e2e8423 100644 --- a/wiki/open-iov.org/index.php/GPU_Software_Bill_Of_Materials_(SBOM).html +++ b/wiki/open-iov.org/index.php/GPU_Software_Bill_Of_Materials_(SBOM).html @@ -124,13 +124,13 @@ Where possible, this documentation will clearly label dates and versions of obse <tr> <td rowspan="2"> </td> -<td>guest communication daemon +<td> </td> <td rowspan="2">Daemon </td> <td>0.1.0 </td> -<td><a rel="nofollow" class="external text" href="https://">OSS</a> +<td><a rel="nofollow" class="external text" href="https://github.com/Open-IOV/">OSS</a> </td> <td> </td> @@ -143,11 +143,11 @@ Where possible, this documentation will clearly label dates and versions of obse <td>Handles IO to and from guests and the host using Virtio-Serial to handle multiple different guest modules. </td></tr> <tr> -<td>mdev management CLI +<td> </td> <td>1.0 </td> -<td><a rel="nofollow" class="external text" href="https://">OSS</a> +<td><a rel="nofollow" class="external text" href="https://github.com/Open-IOV/">OSS</a> </td> <td>0.084 MB </td> diff --git a/wiki/open-iov.org/index.php/LIME_Is_Mediated_Emulation.html b/wiki/open-iov.org/index.php/LIME_Is_Mediated_Emulation.html index bc7eb15..dbbd7f5 100644 --- a/wiki/open-iov.org/index.php/LIME_Is_Mediated_Emulation.html +++ b/wiki/open-iov.org/index.php/LIME_Is_Mediated_Emulation.html @@ -56,7 +56,7 @@ <h2><span class="mw-headline" id="Design_Goals">Design Goals</span></h2> <p>LIME aims to provide similar functionality to <a rel="nofollow" class="external text" href="https://winehq.org/">WINE Is Not Emulation</a>, Valve's <a rel="nofollow" class="external text" href="https://github.com/ValveSoftware/Proton/">Proton</a> / <a rel="nofollow" class="external text" href="https://github.com/ValveSoftware/dxvk">DXVK</a> but with the use of graphics virtualization (vGPU/SR-IOV on consumer GPUs), a shared filesystem between host/guest, and <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Looking_Glass_KVMFR">KVM Frame Relay</a> (high performance graphics buffer sharing via <a rel="nofollow" class="external text" href="https://www.qemu.org/docs/master/system/devices/ivshmem.html">Inter-VM Shared Memory Device / IVSHMEM</a>). </p><p>Compared to WINE, and Proton the benefits of this approach are that Win64 binaries execute without the incompatibilities introduced in new games taking advantage of the latest version of <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/windows/win32/directx">DirectX</a>, or when changes are introduced to the latest version of the Win64 <a rel="nofollow" class="external text" href="https://infogalactic.com/info/Application_binary_interface">ABI</a>. -</p><p>This functionality is enabled via the use of <a rel="nofollow" class="external text" href="">GPU Virtual Machine</a> (for consumer GPU Virtualization), <a rel="nofollow" class="external text" href="https://virtio-fs.gitlab.io/design.html">VirtIO-FS</a> (for host <-> guest filesystem sharing), <a rel="nofollow" class="external text" href="https://looking-glass.io/">Looking Glass</a> (for host <-> guest shared frame buffer), and <a rel="nofollow" class="external text" href="https://github.com///tree/master//"></a> (for orchestration). +</p><p>This functionality is enabled via the use of <a rel="nofollow" class="external text" href="">GPU Virtual Machine</a> (for consumer GPU Virtualization), <a rel="nofollow" class="external text" href="https://virtio-fs.gitlab.io/design.html">VirtIO-FS</a> (for host <-> guest filesystem sharing), <a rel="nofollow" class="external text" href="https://looking-glass.io/">Looking Glass</a> (for host <-> guest shared frame buffer), and (for orchestration). </p> <h2><span class="mw-headline" id="Use-Cases">Use-Cases</span></h2> <h3><span class="mw-headline" id="Win64_Subsystem">Win64 Subsystem</span></h3> diff --git a/wiki/open-iov.org/index.php/Mdev-GPU.html b/wiki/open-iov.org/index.php/Mdev-GPU.html index de97b4e..c26141e 100644 --- a/wiki/open-iov.org/index.php/Mdev-GPU.html +++ b/wiki/open-iov.org/index.php/Mdev-GPU.html @@ -35,7 +35,7 @@ <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-parser-output"><p>This page makes use of terms that are defined in the <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Glossary"><i>Open-IOV Glossary</i></a>. If you're curious what a given term means you can check there for a definition. </p><p><br /> </p><p>This page will be used to document the <b>Mdev-GPU API</b> as well as provide an overview of the internals of the Mdev-GPU package. -</p><p>Mdev-GPU's source code can be found <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU">here</a>. +</p><p>Mdev-GPU's source code can be found here. </p><p> Module docs can be found <a rel="nofollow" class="external text" href="">here</a>.</p><blockquote><p>An absence of critical technical documentation has historically slowed growth and adoption of developer ecosystems for GPU virtualization. </p><p>This <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by/4.0/">CC-BY-4.0</a> 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. @@ -84,17 +84,17 @@ Where possible, this documentation will clearly label dates and versions of obse <h3><span class="mw-headline" id="Compilation">Compilation</span></h3> <p>Compiling Mdev-GPU from source is very simple however it can take a long time to complete (10 minutes for existing sources). -</p><p>If you'd like to compile Mdev-GPU yourself you can do so by cloning <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU">the repo</a> and running the following two commands from within the repository directory: +</p><p>If you'd like to compile Mdev-GPU yourself you can do so by cloning the repo and running the following two commands from within the repository directory: </p><p><code>curl -sSL https://get.haskellstack.org/ | sh</code> </p><p><code>stack install</code> </p><p>These commands will generate all binaries provided by Mdev-GPU under the path <code>~/.local/bin/</code>. -</p><p>If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/releases/tag/0.1.0.0">Releases section of the repository on GitHub</a>. +</p><p>If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the Releases section of the repository on GitHub. </p> <h3><span class="mw-headline" id="Installation">Installation</span></h3> -<p>The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/releases">Releases on GitHub</a> should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. +<p>The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from Releases on GitHub should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. </p> <h3><span class="mw-headline" id="Mdev-GPU_Configuration">Mdev-GPU Configuration</span></h3> -<p>The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/tree/master/etc">/etc/ folder</a>. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. +<p>The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the /etc/ folder. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. </p> <h4><span class="mw-headline" id="Systemd">Systemd</span></h4> <p>GVM/Mdev-GPU exposes several of it's functions as Systemd services. @@ -102,7 +102,7 @@ Where possible, this documentation will clearly label dates and versions of obse </p> <ul><li><b>mdev-post.service</b></li></ul> <h5><span class="mw-headline" id="mdev-post.service">mdev-post.service</span></h5> -<p>As the name would suggest <b><a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/blob/master/etc/systemd/system/mdev-post.service">mdev-post.service</a></b> posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at <b><code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code></b>. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/blob/9993fd0781ddddfcca2cb9bee6455ea2c024cc23/etc/systemd/system/mdev-post.service#L10">ExecStart= line</a> to specify an alternative path. +<p>As the name would suggest <b>mdev-post.service</b> posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at <b><code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code></b>. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service ExecStart= line to specify an alternative path. </p> <h4><span class="mw-headline" id="Mdev-CLI">Mdev-CLI</span></h4> <p>Configuration for Mdev-GPU can be found in the path <b><code>/etc/gvm/mdev-gpu/</code></b>. This path will by default contain several vendor-specific folders which may include configuration examples for various devices/architectures as well as the file <code><b>generate-vgpu-types.yaml</b></code> which you can configure to specify your desired Virtual GPU (vGPU) / VFIO-Mdev topologies as they are presented in the sysfsdev mdev_bus path and as seen by tools such as <a rel="nofollow" class="external text" href="https://github.com/mdevctl/mdevctl">mdevctl</a>. Once you have configured the available types your liking you can refresh the supported types registered with the <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Virtual_IO_Internals#Mediated_Core">Mediated Core</a> by rebooting your machine or reloading the vendor driver kernel module then restarting <b>mdev-post.service</b> or by invoking <b>mdev-cli</b>. diff --git a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=edit.html b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=edit.html index 17806b8..393499f 100644 --- a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=edit.html +++ b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=edit.html @@ -91,19 +91,19 @@ Where possible, this documentation will clearly label dates and versions of obse |The Mediated Core driver provides a common interface for mediated device management that can be used by drivers of different devices. It is an IOMMU/device-agnostic framework for exposing direct device access to user space in a secure, IOMMU-protected environment (based on VFIO). |- | rowspan="2" | -|guest communication daemon +| | rowspan="2" |Daemon |0.1.0 -|[https:// OSS] +|[https://github.com/Open-IOV/ OSS] | |[ ] |2023.02.08 |[https://fedoraproject.org/wiki/Features/VirtioSerial Virtio-Serial], CLI |Handles IO to and from guests and the host using Virtio-Serial to handle multiple different guest modules. |- -|mdev management CLI +| |1.0 -|[https:// OSS] +|[https://github.com/Open-IOV/ OSS] |0.084 MB |[ ] |2023.01.06 diff --git a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=history.html b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=history.html index 1a36f7b..918c647 100644 --- a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=history.html +++ b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&action=history.html @@ -91,7 +91,7 @@ Legend: <strong>(cur)</strong> = difference with latest revision, <strong>(prev) <li data-mw-revid="5576" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=23786&oldid=5576" title="GPU Software Bill Of Materials (SBOM)">cur</a></span><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=5576&oldid=5574" title="GPU Software Bill Of Materials (SBOM)">prev</a></span></span><input type="radio" value="5576" name="oldid" id="mw-oldid-5576" /><input type="radio" value="5576" name="diff" id="mw-diff-5576" /> <a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=5576" class="mw-changeslist-date" title="GPU Software Bill Of Materials (SBOM)">23:53, 9 December 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="2588">2,588 bytes</span> <strong dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="2,588 bytes after change">+1,574</strong> <span class="mw-changeslist-separator"></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> <li data-mw-revid="5574" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=23786&oldid=5574" title="GPU Software Bill Of Materials (SBOM)">cur</a></span><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=5574&oldid=5573" title="GPU Software Bill Of Materials (SBOM)">prev</a></span></span><input type="radio" value="5574" name="oldid" id="mw-oldid-5574" /><input type="radio" value="5574" name="diff" id="mw-diff-5574" /> <a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=5574" class="mw-changeslist-date" title="GPU Software Bill Of Materials (SBOM)">23:41, 9 December 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="1014">1,014 bytes</span> <span dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="1,014 bytes after change">+35</span> <span class="mw-changeslist-separator"></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> <li data-mw-revid="5573" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=23786&oldid=5573" title="GPU Software Bill Of Materials (SBOM)">cur</a></span><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=5573&oldid=5569" title="GPU Software Bill Of Materials (SBOM)">prev</a></span></span><input type="radio" value="5573" name="oldid" id="mw-oldid-5573" /><input type="radio" value="5573" name="diff" id="mw-diff-5573" /> <a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=5573" class="mw-changeslist-date" title="GPU Software Bill Of Materials (SBOM)">23:40, 9 December 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="979">979 bytes</span> <span dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="979 bytes after change">+41</span> <span class="mw-changeslist-separator"></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> -<li data-mw-revid="5569" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=23786&oldid=5569" title="GPU Software Bill Of Materials (SBOM)">cur</a></span><span>prev</span></span><input type="radio" value="5569" name="oldid" id="mw-oldid-5569" /><input type="radio" value="5569" name="diff" id="mw-diff-5569" /> <a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=5569" class="mw-changeslist-date" title="GPU Software Bill Of Materials (SBOM)">23:09, 9 December 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="938">938 bytes</span> <strong dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="938 bytes after change">+938</strong> <span class="mw-changeslist-separator"></span> <span class="comment comment--without-parentheses">Created page with "This page will keep a running list of components used to achieve GPU Virtualization. {| class="wikitable" |+Component Table !Vendor !Component !Description !Version !OSS or Blob !Release Date !Notes |- | |mdev management CLI |Daemon |1.0 |OSS | | |- | |mdev management daemon |Daemon |1.0 |OSS | | |- |Intel |GuC μOS |Firmware |Unknown |Blob | | |- |Intel |HuC |Firmware |Unknown |Blob | | |- |Intel |i915 (with SR-IOV patches) |Driver |5.10 |OSS | | |- |Nvidia |OpenRM |Driver |..."</span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> +<li data-mw-revid="5569" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&diff=23786&oldid=5569" title="GPU Software Bill Of Materials (SBOM)">cur</a></span><span>prev</span></span><input type="radio" value="5569" name="oldid" id="mw-oldid-5569" /><input type="radio" value="5569" name="diff" id="mw-diff-5569" /> <a href="https://open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=5569" class="mw-changeslist-date" title="GPU Software Bill Of Materials (SBOM)">23:09, 9 December 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="938">938 bytes</span> <strong dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="938 bytes after change">+938</strong> <span class="mw-changeslist-separator"></span> <span class="comment comment--without-parentheses">Created page with "This page will keep a running list of components used to achieve GPU Virtualization. {| class="wikitable" |+Component Table !Vendor !Component !Description !Version !OSS or Blob !Release Date !Notes |- | | |Daemon |1.0 |OSS | | |- | |mdev management daemon |Daemon |1.0 |OSS | | |- |Intel |GuC μOS |Firmware |Unknown |Blob | | |- |Intel |HuC |Firmware |Unknown |Blob | | |- |Intel |i915 (with SR-IOV patches) |Driver |5.10 |OSS | | |- |Nvidia |OpenRM |Driver |..."</span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> </ul> <div class="mw-history-compareselectedversions"><input class="historysubmit mw-history-compareselectedversions-button mw-ui-button" title="See the differences between the two selected revisions of this page [v]" accesskey="v" type="submit" value="Compare selected revisions"/> </div></form> diff --git a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html index 413b63a..7f70546 100644 --- a/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html +++ b/wiki/open-iov.org/index.php?title=GPU_Software_Bill_Of_Materials_(SBOM)&oldid=23786.html @@ -125,13 +125,13 @@ Where possible, this documentation will clearly label dates and versions of obse <tr> <td rowspan="2"> </td> -<td>guest communication daemon +<td> </td> <td rowspan="2">Daemon </td> <td>0.1.0 </td> -<td><a rel="nofollow" class="external text" href="https://">OSS</a> +<td><a rel="nofollow" class="external text" href="https://github.com/Open-IOV/">OSS</a> </td> <td> </td> @@ -144,11 +144,11 @@ Where possible, this documentation will clearly label dates and versions of obse <td>Handles IO to and from guests and the host using Virtio-Serial to handle multiple different guest modules. </td></tr> <tr> -<td>mdev management CLI +<td> </td> <td>1.0 </td> -<td><a rel="nofollow" class="external text" href="https://">OSS</a> +<td><a rel="nofollow" class="external text" href="https://github.com/Open-IOV/">OSS</a> </td> <td>0.084 MB </td> diff --git a/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&action=edit.html b/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&action=edit.html index 06240c3..49f731c 100644 --- a/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&action=edit.html +++ b/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&action=edit.html @@ -47,7 +47,7 @@ LIME aims to provide similar functionality to [https://winehq.org/ WINE Is Not E Compared to WINE, and Proton the benefits of this approach are that Win64 binaries execute without the incompatibilities introduced in new games taking advantage of the latest version of [https://docs.microsoft.com/en-us/windows/win32/directx DirectX], or when changes are introduced to the latest version of the Win64 [https://infogalactic.com/info/Application_binary_interface ABI]. -This functionality is enabled via the use of [ GPU Virtual Machine] (for consumer GPU Virtualization), [https://virtio-fs.gitlab.io/design.html VirtIO-FS] (for host <-> guest filesystem sharing), [https://looking-glass.io/ Looking Glass] (for host <-> guest shared frame buffer), and [https://github.com///tree/master// ] (for orchestration). +This functionality is enabled via the use of [ GPU Virtual Machine] (for consumer GPU Virtualization), [https://virtio-fs.gitlab.io/design.html VirtIO-FS] (for host <-> guest filesystem sharing), [https://looking-glass.io/ Looking Glass] (for host <-> guest shared frame buffer), and [ ] (for orchestration). == Use-Cases == diff --git a/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&oldid=786.html b/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&oldid=786.html index 213e0e9..70628b0 100644 --- a/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&oldid=786.html +++ b/wiki/open-iov.org/index.php?title=LIME_Is_Mediated_Emulation&oldid=786.html @@ -57,7 +57,7 @@ <h2><span class="mw-headline" id="Design_Goals">Design Goals</span></h2> <p>LIME aims to provide similar functionality to <a rel="nofollow" class="external text" href="https://winehq.org/">WINE Is Not Emulation</a>, Valve's <a rel="nofollow" class="external text" href="https://github.com/ValveSoftware/Proton/">Proton</a> / <a rel="nofollow" class="external text" href="https://github.com/ValveSoftware/dxvk">DXVK</a> but with the use of graphics virtualization (vGPU/SR-IOV on consumer GPUs), a shared filesystem between host/guest, and <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Looking_Glass_KVMFR">KVM Frame Relay</a> (high performance graphics buffer sharing via <a rel="nofollow" class="external text" href="https://www.qemu.org/docs/master/system/devices/ivshmem.html">Inter-VM Shared Memory Device / IVSHMEM</a>). </p><p>Compared to WINE, and Proton the benefits of this approach are that Win64 binaries execute without the incompatibilities introduced in new games taking advantage of the latest version of <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/windows/win32/directx">DirectX</a>, or when changes are introduced to the latest version of the Win64 <a rel="nofollow" class="external text" href="https://infogalactic.com/info/Application_binary_interface">ABI</a>. -</p><p>This functionality is enabled via the use of <a rel="nofollow" class="external text" href="">GPU Virtual Machine</a> (for consumer GPU Virtualization), <a rel="nofollow" class="external text" href="https://virtio-fs.gitlab.io/design.html">VirtIO-FS</a> (for host <-> guest filesystem sharing), <a rel="nofollow" class="external text" href="https://looking-glass.io/">Looking Glass</a> (for host <-> guest shared frame buffer), and <a rel="nofollow" class="external text" href="https://github.com///tree/master//"></a> (for orchestration). +</p><p>This functionality is enabled via the use of <a rel="nofollow" class="external text" href="">GPU Virtual Machine</a> (for consumer GPU Virtualization), <a rel="nofollow" class="external text" href="https://virtio-fs.gitlab.io/design.html">VirtIO-FS</a> (for host <-> guest filesystem sharing), <a rel="nofollow" class="external text" href="https://looking-glass.io/">Looking Glass</a> (for host <-> guest shared frame buffer), and (for orchestration). </p> <h2><span class="mw-headline" id="Use-Cases">Use-Cases</span></h2> <h3><span class="mw-headline" id="Win64_Subsystem">Win64 Subsystem</span></h3> diff --git a/wiki/open-iov.org/index.php?title=Mdev-GPU&action=edit.html b/wiki/open-iov.org/index.php?title=Mdev-GPU&action=edit.html index 1e1f677..bbdde77 100644 --- a/wiki/open-iov.org/index.php?title=Mdev-GPU&action=edit.html +++ b/wiki/open-iov.org/index.php?title=Mdev-GPU&action=edit.html @@ -46,7 +46,7 @@ This page will be used to document the '''Mdev-GPU API''' as well as provide an overview of the internals of the Mdev-GPU package. -Mdev-GPU's source code can be found [https://github.com//Mdev-GPU here]. +Mdev-GPU's source code can be found [ here]. Module docs can be found [ here].<blockquote>An absence of critical technical documentation has historically slowed growth and adoption of developer ecosystems for GPU virtualization. @@ -57,7 +57,7 @@ Where possible, this documentation will clearly label dates and versions of obse === Compilation === Compiling Mdev-GPU from source is very simple however it can take a long time to complete (10 minutes for existing sources). -If you'd like to compile Mdev-GPU yourself you can do so by cloning [https://github.com//Mdev-GPU the repo] and running the following two commands from within the repository directory: +If you'd like to compile Mdev-GPU yourself you can do so by cloning [ the repo] and running the following two commands from within the repository directory: <code>curl -sSL <nowiki>https://get.haskellstack.org/</nowiki> | sh</code> @@ -65,13 +65,13 @@ If you'd like to compile Mdev-GPU yourself you can do so by cloning [https://git These commands will generate all binaries provided by Mdev-GPU under the path <code>~/.local/bin/</code>. -If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the [https://github.com//Mdev-GPU/releases/tag/0.1.0.0 Releases section of the repository on GitHub]. +If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the [ Releases section of the repository on GitHub]. === Installation === -The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from [https://github.com//Mdev-GPU/releases Releases on GitHub] should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. +The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from [ Releases on GitHub] should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. === Mdev-GPU Configuration === -The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the [https://github.com//Mdev-GPU/tree/master/etc /etc/ folder]. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. +The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the [ /etc/ folder]. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. ==== Systemd ==== GVM/Mdev-GPU exposes several of it's functions as Systemd services. @@ -81,7 +81,7 @@ As of the 0.1.0.0 release the following Systemd services are available: * '''mdev-post.service''' ===== mdev-post.service ===== -As the name would suggest '''[https://github.com//Mdev-GPU/blob/master/etc/systemd/system/mdev-post.service mdev-post.service]''' posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at '''<code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code>'''. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service [https://github.com//Mdev-GPU/blob/9993fd0781ddddfcca2cb9bee6455ea2c024cc23/etc/systemd/system/mdev-post.service#L10 ExecStart= line] to specify an alternative path. +As the name would suggest '''[ mdev-post.service]''' posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at '''<code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code>'''. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service [ ExecStart= line] to specify an alternative path. ==== Mdev-CLI ==== Configuration for Mdev-GPU can be found in the path '''<code>/etc/gvm/mdev-gpu/</code>'''. This path will by default contain several vendor-specific folders which may include configuration examples for various devices/architectures as well as the file <code>'''generate-vgpu-types.yaml'''</code> which you can configure to specify your desired Virtual GPU (vGPU) / VFIO-Mdev topologies as they are presented in the sysfsdev mdev_bus path and as seen by tools such as [https://github.com/mdevctl/mdevctl mdevctl]. Once you have configured the available types your liking you can refresh the supported types registered with the [https://open-iov.org/index.php/Virtual_IO_Internals#Mediated_Core Mediated Core] by rebooting your machine or reloading the vendor driver kernel module then restarting '''mdev-post.service''' or by invoking '''mdev-cli'''. diff --git a/wiki/open-iov.org/index.php?title=Mdev-GPU&action=history.html b/wiki/open-iov.org/index.php?title=Mdev-GPU&action=history.html index 08797b2..aab58b8 100644 --- a/wiki/open-iov.org/index.php?title=Mdev-GPU&action=history.html +++ b/wiki/open-iov.org/index.php?title=Mdev-GPU&action=history.html @@ -70,7 +70,7 @@ Legend: <strong>(cur)</strong> = difference with latest revision, <strong>(prev) <li data-mw-revid="725" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=23740&oldid=725" title="Mdev-GPU">cur</a></span><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=725&oldid=724" title="Mdev-GPU">prev</a></span></span><input type="radio" value="725" name="oldid" id="mw-oldid-725" /><input type="radio" value="725" name="diff" id="mw-diff-725" /> <a href="https://open-iov.org/index.php?title=Mdev-GPU&oldid=725" class="mw-changeslist-date" title="Mdev-GPU">18:45, 2 August 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="1803">1,803 bytes</span> <span dir="ltr" class="mw-plusminus-neg mw-diff-bytes" title="1,803 bytes after change">−12</span> <span class="mw-changeslist-separator"></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> <li data-mw-revid="724" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=23740&oldid=724" title="Mdev-GPU">cur</a></span><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=724&oldid=721" title="Mdev-GPU">prev</a></span></span><input type="radio" value="724" name="oldid" id="mw-oldid-724" /><input type="radio" value="724" name="diff" id="mw-diff-724" /> <a href="https://open-iov.org/index.php?title=Mdev-GPU&oldid=724" class="mw-changeslist-date" title="Mdev-GPU">18:45, 2 August 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="1815">1,815 bytes</span> <strong dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="1,815 bytes after change">+652</strong> <span class="mw-changeslist-separator"></span> <span class="comment comment--without-parentheses"><span dir="auto"><span class="autocomment"><a href="index.php/Mdev-GPU.html#Installation" title="Mdev-GPU">→Installation</a></span></span></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> <li data-mw-revid="721" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=23740&oldid=721" title="Mdev-GPU">cur</a></span><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=721&oldid=713" title="Mdev-GPU">prev</a></span></span><input type="radio" value="721" name="oldid" id="mw-oldid-721" /><input type="radio" value="721" name="diff" id="mw-diff-721" /> <a href="https://open-iov.org/index.php?title=Mdev-GPU&oldid=721" class="mw-changeslist-date" title="Mdev-GPU">17:13, 2 August 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="1163">1,163 bytes</span> <strong dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="1,163 bytes after change">+807</strong> <span class="mw-changeslist-separator"></span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> -<li data-mw-revid="713" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=23740&oldid=713" title="Mdev-GPU">cur</a></span><span>prev</span></span><input type="radio" value="713" name="oldid" id="mw-oldid-713" /><input type="radio" value="713" name="diff" id="mw-diff-713" /> <a href="https://open-iov.org/index.php?title=Mdev-GPU&oldid=713" class="mw-changeslist-date" title="Mdev-GPU">16:01, 25 July 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="356">356 bytes</span> <span dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="356 bytes after change">+356</span> <span class="mw-changeslist-separator"></span> <span class="comment comment--without-parentheses">Created page with "This page will be used to document the internals of the Mdev-GPU package. Currently Mdev-GPU supports registering mediated callbacks with the Mediated Core and the creation of arbitrary mdev devices. Mdev-GPU's source code can be found [https://github.com//Mdev-GPU here]. Module docs can be found [ here]."</span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> +<li data-mw-revid="713" class="mw-tag-visualeditor"><span class="mw-history-histlinks mw-changeslist-links"><span><a href="https://open-iov.org/index.php?title=Mdev-GPU&diff=23740&oldid=713" title="Mdev-GPU">cur</a></span><span>prev</span></span><input type="radio" value="713" name="oldid" id="mw-oldid-713" /><input type="radio" value="713" name="diff" id="mw-diff-713" /> <a href="https://open-iov.org/index.php?title=Mdev-GPU&oldid=713" class="mw-changeslist-date" title="Mdev-GPU">16:01, 25 July 2022</a> <span class='history-user'><a href="./index.php%3Ftitle=User:Arthur&action=edit&redlink=1.html" class="new mw-userlink" title="User:Arthur (page does not exist)"><bdi>Arthur</bdi></a> <span class="mw-usertoollinks mw-changeslist-links"><span><a href="./index.php%3Ftitle=User_talk:Arthur&action=edit&redlink=1.html" class="new mw-usertoollinks-talk" title="User talk:Arthur (page does not exist)">talk</a></span> <span><a href="index.php/Special:Contributions/Arthur.html" class="mw-usertoollinks-contribs" title="Special:Contributions/Arthur">contribs</a></span></span></span> <span class="mw-changeslist-separator"></span> <span class="history-size mw-diff-bytes" data-mw-bytes="356">356 bytes</span> <span dir="ltr" class="mw-plusminus-pos mw-diff-bytes" title="356 bytes after change">+356</span> <span class="mw-changeslist-separator"></span> <span class="comment comment--without-parentheses">Created page with "This page will be used to document the internals of the Mdev-GPU package. Currently Mdev-GPU supports registering mediated callbacks with the Mediated Core and the creation of arbitrary mdev devices. Mdev-GPU's source code can be found [ here]. Module docs can be found [ here]."</span> <span class="mw-tag-markers"><a href="https://open-iov.org/index.php/Special:Tags" title="Special:Tags">Tag</a>: <span class="mw-tag-marker mw-tag-marker-visualeditor"><a href="https://open-iov.org/index.php?title=Open-IOV:VisualEditor&action=edit&redlink=1" class="new" title="Open-IOV:VisualEditor (page does not exist)">Visual edit</a></span></span></li> </ul> <div class="mw-history-compareselectedversions"><input class="historysubmit mw-history-compareselectedversions-button mw-ui-button" title="See the differences between the two selected revisions of this page [v]" accesskey="v" type="submit" value="Compare selected revisions"/> </div></form> diff --git a/wiki/open-iov.org/index.php?title=Mdev-GPU&oldid=23740.html b/wiki/open-iov.org/index.php?title=Mdev-GPU&oldid=23740.html index 512ff16..6d9b197 100644 --- a/wiki/open-iov.org/index.php?title=Mdev-GPU&oldid=23740.html +++ b/wiki/open-iov.org/index.php?title=Mdev-GPU&oldid=23740.html @@ -36,7 +36,7 @@ <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-parser-output"><p>This page makes use of terms that are defined in the <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Glossary"><i>Open-IOV Glossary</i></a>. If you're curious what a given term means you can check there for a definition. </p><p><br /> </p><p>This page will be used to document the <b>Mdev-GPU API</b> as well as provide an overview of the internals of the Mdev-GPU package. -</p><p>Mdev-GPU's source code can be found <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU">here</a>. +</p><p>Mdev-GPU's source code can be found here. </p><p> Module docs can be found <a rel="nofollow" class="external text" href="">here</a>.</p><blockquote><p>An absence of critical technical documentation has historically slowed growth and adoption of developer ecosystems for GPU virtualization. </p><p>This <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by/4.0/">CC-BY-4.0</a> 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. @@ -85,17 +85,17 @@ Where possible, this documentation will clearly label dates and versions of obse <h3><span class="mw-headline" id="Compilation">Compilation</span></h3> <p>Compiling Mdev-GPU from source is very simple however it can take a long time to complete (10 minutes for existing sources). -</p><p>If you'd like to compile Mdev-GPU yourself you can do so by cloning <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU">the repo</a> and running the following two commands from within the repository directory: +</p><p>If you'd like to compile Mdev-GPU yourself you can do so by cloning the repo and running the following two commands from within the repository directory: </p><p><code>curl -sSL https://get.haskellstack.org/ | sh</code> </p><p><code>stack install</code> </p><p>These commands will generate all binaries provided by Mdev-GPU under the path <code>~/.local/bin/</code>. -</p><p>If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/releases/tag/0.1.0.0">Releases section of the repository on GitHub</a>. +</p><p>If you would prefer not to wait for the program to compile you can find pre-compiled x86_64 binaries under the Releases section of the repository on GitHub. </p> <h3><span class="mw-headline" id="Installation">Installation</span></h3> -<p>The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/releases">Releases on GitHub</a> should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. +<p>The binaries compiled on your local machine by Stack in the <code>~/.local/bin/</code> path or downloaded from Releases on GitHub should be copied to <code>/usr/bin/</code>. This can be accomplished both via install script (currently testing in ) or via management layer-agnostic package. </p> <h3><span class="mw-headline" id="Mdev-GPU_Configuration">Mdev-GPU Configuration</span></h3> -<p>The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/tree/master/etc">/etc/ folder</a>. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. +<p>The Mdev-GPU repository provides Systemd service and example configurations for Mdev-CLI in the /etc/ folder. On installation the directories & files contained in the repository's /etc/ folder should be copied to the absolute path <code>/etc/</code> on the user's computer. </p> <h4><span class="mw-headline" id="Systemd">Systemd</span></h4> <p>GVM/Mdev-GPU exposes several of it's functions as Systemd services. @@ -103,7 +103,7 @@ Where possible, this documentation will clearly label dates and versions of obse </p> <ul><li><b>mdev-post.service</b></li></ul> <h5><span class="mw-headline" id="mdev-post.service">mdev-post.service</span></h5> -<p>As the name would suggest <b><a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/blob/master/etc/systemd/system/mdev-post.service">mdev-post.service</a></b> posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at <b><code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code></b>. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service <a rel="nofollow" class="external text" href="https://github.com//Mdev-GPU/blob/9993fd0781ddddfcca2cb9bee6455ea2c024cc23/etc/systemd/system/mdev-post.service#L10">ExecStart= line</a> to specify an alternative path. +<p>As the name would suggest <b>mdev-post.service</b> posts the GPU(s) in a state where they are ready to be virtualized. When the service is invoked the mdev-cli util registers Mdev callbacks and supported mediated device (Mdev) types with the Mediated Core according to the user's specified configuration at <b><code>/etc/gvm/mdev-gpu/generate-vgpu-types.yaml</code></b>. If you'd like to place your configuration file elsewhere and still have your configuration invoked on boot you can edit the systemd service ExecStart= line to specify an alternative path. </p> <h4><span class="mw-headline" id="Mdev-CLI">Mdev-CLI</span></h4> <p>Configuration for Mdev-GPU can be found in the path <b><code>/etc/gvm/mdev-gpu/</code></b>. This path will by default contain several vendor-specific folders which may include configuration examples for various devices/architectures as well as the file <code><b>generate-vgpu-types.yaml</b></code> which you can configure to specify your desired Virtual GPU (vGPU) / VFIO-Mdev topologies as they are presented in the sysfsdev mdev_bus path and as seen by tools such as <a rel="nofollow" class="external text" href="https://github.com/mdevctl/mdevctl">mdevctl</a>. Once you have configured the available types your liking you can refresh the supported types registered with the <a rel="nofollow" class="external text" href="https://open-iov.org/index.php/Virtual_IO_Internals#Mediated_Core">Mediated Core</a> by rebooting your machine or reloading the vendor driver kernel module then restarting <b>mdev-post.service</b> or by invoking <b>mdev-cli</b>. |
