kb:linux:generalites:gpu_passthrough_avec_qemu
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| kb:linux:generalites:gpu_passthrough_avec_qemu [2019/07/05 22:28] – beu | kb:linux:generalites:gpu_passthrough_avec_qemu [2020/03/30 08:14] (Version actuelle) – beu | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| :!: ATTENTION CETTE DOCUMENTATION EST EN COURS DE REDACTION :!: | :!: ATTENTION CETTE DOCUMENTATION EST EN COURS DE REDACTION :!: | ||
| ====== GPU Passthrough avec QEMU ====== | ====== GPU Passthrough avec QEMU ====== | ||
| - | |||
| - | :!: Attention, ce sujet est bien trop complexe, impossible d' | ||
| ===== Prérequis ===== | ===== Prérequis ===== | ||
| Ligne 18: | Ligne 16: | ||
| * ovmf | * ovmf | ||
| * [[https:// | * [[https:// | ||
| + | * Un iso de [[https:// | ||
| + | * l'iso des [[https:// | ||
| === Autre : === | === Autre : === | ||
| - | Du temps et de la patience. Vraiment! | + | * Une maîtrise des systèmes Windows et Linux. |
| + | * Des compétences/ | ||
| + | * Du temps et de la patience. Vraiment! | ||
| ===== Ma configuration : ===== | ===== Ma configuration : ===== | ||
| Ligne 43: | Ligne 45: | ||
| Ensuite branchez votre Dummy plug sur votre GPU, et vos écrans sur votre iGPU. | Ensuite branchez votre Dummy plug sur votre GPU, et vos écrans sur votre iGPU. | ||
| - | Ensuite configurer votre GRUB en ajoutant l' | + | Ensuite configurer votre GRUB en ajoutant l' |
| Ensuite il faut demander a votre initramfs de charger les pilotes vfio en ajoutant les modules **vfio_pci**, | Ensuite il faut demander a votre initramfs de charger les pilotes vfio en ajoutant les modules **vfio_pci**, | ||
| Ligne 59: | Ligne 61: | ||
| </ | </ | ||
| - | vous devriez | + | vous devriez |
| < | < | ||
| Ligne 102: | Ligne 104: | ||
| </ | </ | ||
| - | Ensuite faut définir au noyau quel carte graphique on reserve | + | Il faut aussi que ce soit les seuls dans leur groupe IOMMU. Si ce n'est pas le cas, il faudra bouger votre GPU sur un autre port PCI. |
| + | |||
| + | Ensuite faut définir au noyau quel carte graphique on réserve | ||
| <code file / | <code file / | ||
| Ligne 119: | Ligne 123: | ||
| afin de vérifier l' | afin de vérifier l' | ||
| - | <code file [highlight_lines_extra=" | + | <code file [highlight_lines_extra=" |
| .... | .... | ||
| 01:00.0 VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1070] (rev a1) | 01:00.0 VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1070] (rev a1) | ||
| Ligne 131: | Ligne 135: | ||
| .... | .... | ||
| </ | </ | ||
| + | |||
| + | On va ensuite configurer pulseaudio pour qu'il supporte le fait que le son remonte depuis la VM. | ||
| + | |||
| + | Pour cela, copier votre cookie Pulseaudio dans le compte root : | ||
| + | |||
| + | <code bash> | ||
| + | # cp ~/ | ||
| + | </ | ||
| + | |||
| + | ===== Configuration du Guest ===== | ||
| + | |||
| + | Démarrez votre VM sans la carte graphique, et tout les modules necessaires. Par exemple avec la commande : | ||
| + | |||
| + | <code bash> | ||
| + | qemu-system-x86_64 \ | ||
| + | -machine q35, | ||
| + | -cpu host, | ||
| + | -drive if=pflash, | ||
| + | -drive if=pflash, | ||
| + | -overcommit mem-lock=on \ | ||
| + | -overcommit cpu-pm=on \ | ||
| + | -pidfile / | ||
| + | -monitor telnet: | ||
| + | -enable-kvm \ | ||
| + | -name guest=Windows, | ||
| + | -smp 3, | ||
| + | -m 8G \ | ||
| + | -mem-prealloc \ | ||
| + | -global ICH9-LPC.disable_s3=1 \ | ||
| + | -global ICH9-LPC.disable_s4=1 \ | ||
| + | -no-user-config \ | ||
| + | -nodefaults \ | ||
| + | -rtc base=localtime, | ||
| + | -global kvm-pit.lost_tick_policy=discard \ | ||
| + | -boot strict=on \ | ||
| + | -no-hpet \ | ||
| + | -netdev type=user, | ||
| + | -device virtio-net-pci, | ||
| + | -device ich9-intel-hda, | ||
| + | -device hda-output \ | ||
| + | -device ioh3420, | ||
| + | -device vfio-pci, | ||
| + | -device vfio-pci, | ||
| + | -drive | ||
| + | -device virtio-scsi-pci, | ||
| + | -device scsi-hd, | ||
| + | -device ivshmem-plain, | ||
| + | -object memory-backend-file, | ||
| + | -spice disable-ticketing, | ||
| + | -device virtio-serial-pci \ | ||
| + | -chardev spicevmc, | ||
| + | -device virtserialport, | ||
| + | -device virtio-mouse-pci, | ||
| + | -device virtio-keyboard-pci, | ||
| + | -usb \ | ||
| + | -device intel-iommu \ | ||
| + | -audiodev pa, | ||
| + | -vga std -display sdl | ||
| + | </ | ||
| + | |||
| + | Installez votre Windows 10. Je vous conseille : | ||
| + | * de mettre un mot de passe a votre session (Attention a bien mettre l' | ||
| + | * Désactiver l' | ||
| + | * Activer RDP | ||
| + | * D' | ||
| + | |||
| + | Une fois fait, télécharger (sur votre guest) les pilotes spécific [[https:// | ||
| + | |||
| + | Installez aussi Visual C++. | ||
| + | |||
| + | Une fois fait, télécharger la dernieres release de [[https:// | ||
| + | |||
| + | |||
| + | |||
| + | Éteignez la VM et lancez la sans l' | ||
| + | |||
| + | < | ||
| + | -vga none -display none | ||
| + | </ | ||
| + | |||
| + | Et normalement, | ||
| + | |||
kb/linux/generalites/gpu_passthrough_avec_qemu.1562365690.txt.gz · Dernière modification : de beu
