Hello, I have made a "Gaming" Windows VM with GPU passthrough and wanted to ask if there's anything I can do to make the VM more optimized?
Proxmox host specs:
CPU: AMD Ryzen 5 1600 (6 cores, 12 threads)
RAM: DDR4 64GB 3200MHz (2x 32GB) dual channel
SSD: 1TB NVMe SSD (all VM storage on this SSD)
Motherboard: Gigabyte B450 Gaming X (rev. 1.x)
GPU: RTX 3060 ti (passed through to Windows VM)
Windows 10 VM.
My Windows VM config:
Proxmox GRUB config:
Output of /etc/modprobe.d/kvm.conf:
Proxmox host specs:
CPU: AMD Ryzen 5 1600 (6 cores, 12 threads)
RAM: DDR4 64GB 3200MHz (2x 32GB) dual channel
SSD: 1TB NVMe SSD (all VM storage on this SSD)
Motherboard: Gigabyte B450 Gaming X (rev. 1.x)
GPU: RTX 3060 ti (passed through to Windows VM)
Windows 10 VM.
My Windows VM config:
Code:
root@proxmox:~# cat /etc/pve/qemu-server/102.conf
## CPU PIN
#cpu_taskset 2-11
#assign_interrupts 2-11 --all
##Set halt_poll_ns
#set_halt_poll 0
agent: 1
args: hv_vendor_id=GIGABYTE,+pdpe1gb' -smbios type=0,version=UX305UA.201 -smbios type=1,manufacturer=GIGABYTE,product=UX305UA,version=2021.1 -smbios type=2,manufacturer=AMD,version=2021.5,product='AMD Ryzen 5 1600' -smbios type=3,manufacturer=XBZJ -smbios type=17,manufacturer=KINGSTON,loc_pfx=DDR4,speed=3200,serial=114514,part=FF63 -smbios type=4,manufacturer=AMD,max-speed=4800,current-speed=3200
audio0: device=ich9-intel-hda,driver=none
balloon: 0
bios: ovmf
boot: order=virtio0;net0;ide2
cores: 10
cpu: host,hidden=1
cpuunits: 10000
efidisk0: local:102/vm-102-disk-0.raw,efitype=4m,pre-enrolled-keys=1,size=528K
hookscript: local:snippets/exec-cmds
hostpci0: 0000:07:00,pcie=1,x-vga=1
hotplug: usb
hugepages: 1024
ide2: local:iso/virtio-win-0.1.229.iso,media=cdrom,size=522284K
machine: pc-q35-8.1
memory: 24576
meta: creation-qemu=8.1.2,ctime=1704182629
name: wintest
net0: virtio=E8:2A:EA:9F:8A:1A,bridge=vmbr0,firewall=1
numa: 1
ostype: win10
scsihw: virtio-scsi-single
smbios1: uuid=24c326dd-3cec-48fc-bb9f-87aa3984e2c9,manufacturer=QVNVUw==,product=VVgzMDVVQQ==,version=MjAyMS4x,serial=MTI0NjY3,sku=MTM0NDY4,family=Ng==,base64=1
sockets: 1
tablet: 0
tpmstate0: local:102/vm-102-disk-1.raw,size=4M,version=v2.0
vcpus: 10
vga: none
virtio0: local:102/vm-102-disk-2.raw,cache=unsafe,iothread=1,size=400G
virtio1: /dev/disk/by-id/ata-WDC_WD10EZEX-00BBHA0_WD-WCC6Y7FUZN3L,size=976762584K,serial=4421
vmgenid: 12ff2d20-3979-404b-91b0-90bdb31cf66f
Proxmox GRUB config:
Code:
root@proxmox:~# cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt pcie_acs_override=downstream,multifunction default_hugepagesz=1G hugepagesz=1G"
GRUB_CMDLINE_LINUX=""
# If your computer has multiple operating systems installed, then you
# probably want to run os-prober. However, if your computer is a host
# for guest OSes installed via LVM or raw disk devices, running
# os-prober can cause damage to those guest OSes as it mounts
# filesystems to look for things.
#GRUB_DISABLE_OS_PROBER=false
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
Output of /etc/modprobe.d/kvm.conf:
Code:
options kvm ignore_msrs=1 report_ignored_msrs=0