After struggling with performance and driver issues with Windows operating systems on Proxmox, I came across some documentation that made things a lot easier. Here are some of the articles on their wiki:
Windows 2022 guest best practices
Windows 2019 guest best practices
Windows 10 guest best practices
These are the settings that I now use for Windows VMs in Proxmox.
- Guest OS: Microsoft Windows
- Version: 10/2016/2019
- SCSO Controller: VirtIO SCSI
- Qemu Agent: Enabled
- Cache: Default (safer but slower)
Optional for performance: "Write back" - Discard: Enabled (TRIM)
- NIC Model: VirtIO (paravirtualized)
- Latest stable VirtIO Drivers