intel GVT-g技術實踐

平臺支持:官方表示支持5代、6代、7代CPU集顯
實驗十代10600K也可以開啟,十一代開始加入了咖喱味的Xe不再支持,換成sriov方式支持。

vGPU type

i915-GVTg_V5_1  # Video memory: <512MB, 2048MB>, resolution: up to 1920x1200
i915-GVTg_V5_2  # Video memory: <256MB, 1024MB>, resolution: up to 1920x1200
i915-GVTg_V5_4  # Video memory: <128MB, 512MB>, resolution: up to 1920x1200
i915-GVTg_V5_8  # Video memory: <64MB, 384MB>, resolution: up to 1024x768

四種類型,不同的顯存,支持的類型有限制。
aperture size為128M時,支持V5_8一種類型
aperture size為256M時,支持V5_4及V5_8兩種類型
aperture size為512M時,支持V5_2、V5_4及V5_8三種類型
aperture size為1024M及以上時,支持所有四種類型
絕大多數(shù)主板,BIOS中開放出來的顯存設置項為DVMT動態(tài)顯存劃分,并沒有開放aperture size設置,默認為256M。
建議聯(lián)系主板廠商技術支持獲取相應支持。
網上修改nvram的方法如下:
1.獲取主板BIOS文件,下載UEFI tool https://github.com/LongSoft/UEFITool
2.用該工具打開BIOS文件,并搜索aperture size,右鍵保存
3.下載IFR Extractor工具 https://github.com/donovan6000/Universal-IFR-Extractor,打開剛才保存的文件,找到aperture size,記錄偏移量
4.下載EFI文件,格式化U盤為FAT32,文件夾結構EFI/BOOT/bootx64.efi https://github.com/datasone/grub-mod-setup_var
華擎主板需要下載使用這個EFI文件 https://github.com/XDleader555/grub_setup_var (已驗證)
5.U盤啟動進EFIshell環(huán)境,運行命令修改參數(shù)。
此方法扣掉電池可還原

Host linux設置

$ sudo vi /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt rd.driver.pre=vfio_pci,kvmgt i915.enable_gvt=1"
更新grub

$ sudo touch /etc/dracut.conf.d/vfio.conf    ///創(chuàng)建配置文件
$ sudo vi /etc/dracut.conf.d/vfio.conf     ///將以下一行寫入配置文件
    add_drivers+=" vfio vfio_pci vfio_virqfd vfio_iommu_type1 vfio_mdev kvmgt "     ///注意引號之間需有空格
更新initramfs

創(chuàng)建mdev設備

$ uuidgen                              ///隨機生成uuid
$ sudo echo "uuid" > "/sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_x/create"  ///根據vgpu類型創(chuàng)建

此方法為臨時創(chuàng)建,host系統(tǒng)重啟后失效。
可采用定時任務在每次開機時自動創(chuàng)建設備

# crontab -e
@reboot  echo "uuid" > "/sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_x/create"

直通虛擬機

libvirt xml

<hostdev mode='subsystem' type='mdev' managed='no' model='vfio-pci' display='off'>
      <source>
        <address uuid='uuid'/>
      </source>
</hostdev>

啟動虛擬機之后,可用rdp等遠程連接工具連接。

相關問題

1.圖像輸出
除了RDP遠程連接,也可以采用DMA-BUF方式將圖像通過spice EGL顯示,具體參見https://wiki.archlinux.org/title/Intel_GVT-g
2.macos相關
由于vgpu給到虛擬機的pci id與物理集顯相同,嘗試macos下使用,失敗。由于vgpu缺乏固件,需要修改虛擬機顯卡驅動程序。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容