Difference between revisions of "GPU Software Bill Of Materials (SBOM)"

From Open-IOV
Jump to navigation Jump to search
(Fix repository links to the cgit tree URLs)
 
(38 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page will keep a running list of components used to achieve GPU Virtualization.
{{About message}}
{| class="wikitable"
|+Component Table
!Vendor
!Component
!Description
!Version
!OSS or Blob
!Vendor Docs
!Release Date
!Interfaces / APIs
!Notes
|-
|Arc Compute
|gvm-cli
|Daemon
|1.0
|OSS
|[https://docs.linux-gvm.org docs.linux-gvm.org]
|
|CLI
|
|-
|Arc Compute
|gvm-mgr
|Daemon
|1.0
|OSS
|[https://docs.linux-gvm.org docs.linux-gvm.org]
|
|
|
|-
|Intel
|i915 (with SR-IOV patches)
|Driver
|5.10
|OSS
|
|
|
|
|-
|Intel
|[https://open-iov.org/index.php/GPU_Firmware#GuC GuC] μOS
|Firmware
|Unknown
|Blob
|
|
|IOMMU Interrupts, Power Management Interrupts, [https://open-iov.org/index.php/GPU_Driver_Internals#GTT_(Graphics_Translation_Table) GTT]
|Handles scheduling, and power management.
|-
|Intel
|HuC
|Firmware
|Unknown
|Blob
|
|
|[https://open-iov.org/index.php/GPU_Driver_Internals#GTT_(Graphics_Translation_Table) GTT]
|Handles video encoding/decoding.
|-
|Nvidia
|[[OpenRM]]
|Driver
|525
|OSS
|
|
|
|
|-
|Nvidia
|[https://open-iov.org/index.php/GPU_Firmware#GSP GSP] RM (uproc)
|Firmware
|522.25
|Blob
|
|2022.10.12
|
|
|-
|Nvidia
|Falcon/NvRISC (uproc)
|Firmware
|Unknown
|Blob
|
|
|FBIF (Frame Buffer Interface) / GMMU
|
|-
|Nvidia
|nvidia-vgpud
|Daemon
|v15
|Blob
|
|
|
|
|-
|Nvidia
|nvidia-vgpu-mgr
|Daemon
|v15
|Blob
|
|
|[https://open-iov.org/index.php/GPU_Driver_Internals#vmiop vmiop]
|
|-
|Nvidia
|libnvidiavgpu.so
|Library
|v15
|Blob
|
|
|
|
|}


== More Information ==
{{Superseded}}
= GPU Software Bill Of Materials (SBOM) =


# [https://riscv.org/wp-content/uploads/2016/07/Tue1100_Nvidia_RISCV_Story_V2.pdf Nvidia RISC-V Story]
<blockquote>'''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:</blockquote>
# [https://linux-gvm.org linux-gvm.org]
 
#[https://01.org/linuxgraphics/documentation/hardware-specification-prms Intel Graphics Programmer's Reference Manuals (PRM)]
* '''[https://git.vgpu.io/open-iov.git/tree/SBOM.md <code>SBOM.md</code>]''' — 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.
#[https://bwidawsk.net/blog/2013/1/i915-hardware-contexts-and-some-bits-about-batchbuffers/ i915: Hardware Contexts (and some bits about batchbuffers)]
* '''[https://git.vgpu.io/open-iov.git/tree/sbom/open-iov-0.1.0.cdx.json <code>sbom/open-iov-0.1.0.cdx.json</code>]''' — machine-readable CycloneDX 1.6 SBOM (serial <code>urn:uuid:e626c5a1-9697-4546-bb2b-5b4feb58e922</code>).
#[https://bwidawsk.net/blog/2014/6/the-global-gtt-part-1/ i915: The Global GTT Part 1]
 
#[https://bwidawsk.net/blog/2014/6/aliasing-ppgtt-part-2/ i915: Aliasing PPGTT Part 2]
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.
#[https://bwidawsk.net/blog/2014/7/true-ppgtt-part-3/ i915: True PPGTT Part 3]
#[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/ i915: Future PPGTT Part 4 (Dynamic page table allocations, 64 bit address space, GPU "mirroring", and yeah, something about relocs too)]
#[https://igor-blue.github.io/2021/02/10/graphics-part1.html i915: Security of the Intel Graphics Stack - Part 1 - Introduction]
#[https://igor-blue.github.io/2021/02/24/graphics-part2.html i915: Security of the Intel Graphics Stack - Part 2 - FW <-> GuC]
#[https://01.org/sites/default/files/documentation/an_introduction_to_intel_gvt-g_for_external.pdf i915: An Introduction to Intel GVT-g (with new architecture)]

Latest revision as of 04:41, 12 October 2026

An absence of critical technical documentation has historically slowed growth and adoption of developer ecosystems for GPU virtualization.

This CC-BY-4.0 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.

Superseded document. This page records an earlier analysis that the current implementation no longer follows. It is kept for the record; current documentation is linked at the top of the page or at Documentation.

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 — 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 — 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.