notes perso pour pass through

Je veux gamer (baldur’s gate 3) sous Win11, donc je vais essayer de suivre les instructions de là:
[TUTORIAL] Windows 11 VM for gaming setup guide

Pis essayer d’obtenir des résultats semblables à:
Double GPU Passthrough in Proxmox 8!? Play Baldur’s Gate 3 and Minecraft On The Same Machine?

J’pense qu,y faut que mes VMs Windows et Linux bénéficient de GPU pass through pour la T1000 (pas mobile malgré ce qui est écrit ici)

ensuite  que le host ProxMox/Debian et les VMs hackintosh utilisent tle iGPU de Intel. Pour ça je crois comprendre que je dois Blacklister NVIDIA.

Ci-dessous, le iGPU Intel apparait pas . J’crois que c’est mal partit.

Je comprends que le IOMMU groupe  »1 » est partagé entre le gpu et 2 3 autres bidules. On veut pas ça.

Pour corriger ça, je dois passer certains paramètres au boot, mais..

J’utitlise GRUB ou systemd-boot ?
https://pve.proxmox.com/wiki/Host_Bootloader
Determine which Bootloader is Used

D’après le Output
Boot0001* proxmox HD(2,GPT,05[…] cf3e,0x800,0x200000)/File(\EFI\PROXMOX\SHIMX64.EFI)

J’utilise… probablement GRUB ??

Sinon, proxmox-boot-tool status:

Re-executing ‘/usr/sbin/proxmox-boot-tool’ in new private mount namespace..
E: /etc/kernel/proxmox-boot-uuids does not exist.

~~Explications là: X

 

ls /etc/default/g*
/etc/default/grub

/etc/default/grub.d:
init-select.cfg installer.cfg proxmox-ve.cfg

 


# pvesh get /nodes/percolator/hardware/pci –pci-class-blacklist «  »

│ 0x030000 │ 0x1fb0 │ 0000:01:00.0 │ 1 │ 0x10de │ TU117GLM [Quadro T1000 Mobile]

Output complet:


«  »
root@r:~# pvesh get /nodes/percolator/hardware/pci –pci-class-blacklist «  »
┌──────────┬────────┬──────────────┬────────────┬────────┬─────────────────────────────────────────────────────────────────────────────
│ class │ device │ id │ iommugroup │ vendor │ device_name
╞══════════╪════════╪══════════════╪════════════╪════════╪═════════════════════════════════════════════════════════════════════════════
│ 0x010601 │ 0xa282 │ 0000:00:17.0 │ 5 │ 0x8086 │ 200 Series PCH SATA controller [AHCI mode]
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x010802 │ 0xa80a │ 0000:02:00.0 │ 16 │ 0x144d │ NVMe SSD Controller PM9A1/PM9A3/980PRO
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x020000 │ 0x8168 │ 0000:03:00.0 │ 17 │ 0x10ec │ RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x030000 │ 0x1fb0 │ 0000:01:00.0 │ 1 │ 0x10de │ TU117GLM [Quadro T1000 Mobile]
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x040300 │ 0xa2f0 │ 0000:00:1f.3 │ 15 │ 0x8086 │ 200 Series PCH HD Audio
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x040300 │ 0x10fa │ 0000:01:00.1 │ 1 │ 0x10de │
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x058000 │ 0xa2a1 │ 0000:00:1f.2 │ 15 │ 0x8086 │ 200 Series/Z370 Chipset Family Power Management Controller
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060000 │ 0x591f │ 0000:00:00.0 │ 0 │ 0x8086 │ Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060100 │ 0xa2c8 │ 0000:00:1f.0 │ 15 │ 0x8086 │ 200 Series PCH LPC Controller (B250)
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0x1901 │ 0000:00:01.0 │ 1 │ 0x8086 │ 6th-10th Gen Core Processor PCIe Controller (x16)
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa2eb │ 0000:00:1b.0 │ 6 │ 0x8086 │ 200 Series PCH PCI Express Root Port #21
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa294 │ 0000:00:1c.0 │ 7 │ 0x8086 │ 200 Series PCH PCI Express Root Port #5
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa295 │ 0000:00:1c.5 │ 8 │ 0x8086 │ 200 Series PCH PCI Express Root Port #6
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa296 │ 0000:00:1c.6 │ 9 │ 0x8086 │ 200 Series PCH PCI Express Root Port #7
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa297 │ 0000:00:1c.7 │ 10 │ 0x8086 │ 200 Series PCH PCI Express Root Port #8
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa298 │ 0000:00:1d.0 │ 11 │ 0x8086 │ 200 Series PCH PCI Express Root Port #9
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa299 │ 0000:00:1d.1 │ 12 │ 0x8086 │ 200 Series PCH PCI Express Root Port #10
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa29a │ 0000:00:1d.2 │ 13 │ 0x8086 │ 200 Series PCH PCI Express Root Port #11
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x060400 │ 0xa29b │ 0000:00:1d.3 │ 14 │ 0x8086 │ 200 Series PCH PCI Express Root Port #12
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x078000 │ 0xa2ba │ 0000:00:16.0 │ 4 │ 0x8086 │ 200 Series PCH CSME HECI #1
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x088000 │ 0x1911 │ 0000:00:08.0 │ 2 │ 0x8086 │ Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mi
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x0c0330 │ 0xa2af │ 0000:00:14.0 │ 3 │ 0x8086 │ 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x0c0500 │ 0xa2a3 │ 0000:00:1f.4 │ 15 │ 0x8086 │ 200 Series/Z370 Chipset Family SMBus Controller
└──────────┴────────┴──────────────┴────────────┴────────┴─────────────────────────────────────────────────────────────────────────────
root@:~#


J’ai fais ce qu’il faut,
GRUB_CMDLINE_LINUX_DEFAULT= »quiet pcie_acs_override=downstream,multifunction »
/etc/modules
blacklist de Nvidia via  /etc/modprobe.d/pve-blacklist.conf…

Mais rendu là… update-initramfs -u
update-initramfs: Generating /boot/initrd.img-6.8.4-3-pve
Running hook script ‘zz-proxmox-boot’..
Re-executing ‘/etc/kernel/postinst.d/zz-proxmox-boot’ in new private mount namespace..
No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync.
System booted in EFI-mode but ‘grub-efi-amd64’ meta-package not installed!
Install ‘grub-efi-amd64’ to get updates.
Couldn’t find EFI system partition. It is recommended to mount it to /boot or /efi.
Alternatively, use –esp-path= to specify path to mount point.

 

On dirait que l’OS charge obstinément les pilotes pour la carte NVIDIA malgré le blacklist demandé partout…

Là, je (re)Boot direct dans le BIOS , je mets le iGPU en primary et active a yes plutôt que Auto…

je débranche l’écran de la carte fille nvidia (HDMI)

Je branche l’écran au motherboard en VGA style 1989….

Ça semble mieux parti… stay tuned.

:~# lspci -nnv | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630 [8086:5912] (rev 04) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117GLM [Quadro T1000 Mobile] [10de:1fb0] (rev a1) (prog-if 00 [VGA controller])

et voilàààààà:

:~# pvesh get /nodes/percolator/hardware/pci –pci-class-blacklist «  »

│ 0x030000 │ 0x5912 │ 0000:00:02.0 │ 0 │ 0x8086 │ HD Graphics 630
├──────────┼────────┼──────────────┼────────────┼────────┼─────────────────────────────────────────────────────────────────────────────
│ 0x030000 │ 0x1fb0 │ 0000:01:00.0 │ 17 │ 0x10de │ TU117GLM [Quadro T1000 Mobile]

Bon, à part ça:

dmesg | grep -e DMAR -e IOMMU
[…]
[ 0.065003] DMAR: IOMMU enabled

À cette étape, mon /etc/default/grub est garni:

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
#GRUB_CMDLINE_LINUX_DEFAULT= »pcie_acs_override=downstream,multifunction »
GRUB_CMDLINE_LINUX_DEFAULT= »quiet intel_iommu=on i915.enable_gvt=1 iommu=pt pcie_acs_override=downstream,multifunction video=efifb:off>
GRUB_CMDLINE_LINUX= » »

POUR Windows DOIT ÊTRE UN Q35: Xhttps://youtu.be/i_2ZGcm4E_4?si=AnSONzloWHamHGq4&t=447

Les GPUS sont en fait 2 devices PCI à passer; un GPU et une soundcard: xhttps://youtu.be/i_2ZGcm4E_4?si=qhLpOT8AFARMa_MM

les 12.5minutes du vodeo pour baldurs gate sont faites

dmesg | grep -i vfio

lspci -nn

[…]
00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 630 [8086:5912] (rev 04)
[…]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117GLM [Quadro T1000 Mobile] [10de:1fb0] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:10fa] (rev a1)

Plus sérieux (16m25):

:~# lspci -n -s 01:00.0
01:00.0 0300: 10de:1fb0 (rev a1)
~# lspci -n -s 01:00
01:00.0 0300: 10de:1fb0 (rev a1)
01:00.1 0403: 10de:10fa (rev a1)
:~# lspci -n -s 00:02
00:02.0 0300: 8086:5912 (rev 04)

Avant de continuer le blacklist: l’étape suivante comportera ceci:  Reboot your machine, be sure to use the web gui because with the gpu passed through you will no longer get video out.

Donc example dit:

echo "options vfio-pci ids=10de:1381,10de:0fbc disable_vga=1" > /etc/modprobe.d/vfio.conf

Ce qui se traduit par echo « options vfio-pci ids=10de:1fb0,10de:10fa,8086:5912 disable_vga=1 » > /etc/modprobe.d/vfio.conf

Quand on crée la VM windows, on peut donner le host comme type de cpu .

xhttps://youtu.be/i_2ZGcm4E_4?si=mJsnVU_cZbHA1O3N

Bon, la vm part avec 30gb de ram, mais pas si je map l’audio du gpu nvidia.. ?
La vm semble fonctionner, après un shitload d’updates. Le GPU semble ok…
Mais pas d’audio :/

 

Je crois que j’ai trop suivi le tuto pour Baldur’s Gate et pas assez celui pour Win 11,  XD
Après quelques ajustements notamment pour masquer au max que c’est une VM…

(pour enlever un disque faut le détacher, duh)

chu rendu étape 11. ah pis jai hate d’arriver a bien partager pour sonoma/ventura (autre histoire)

dmidecode -t 0 and dmidecode -t 1

Comments

No comments yet. Why don’t you start the discussion?

Laisser un commentaire

Votre adresse courriel ne sera pas publiée. Les champs obligatoires sont indiqués avec *