Optimizing Windows VM: P/E Core pinning on i5-13600K

popaul

New Member
Nov 22, 2024
6
1
3
Hello,

I’ve been researching how a Windows VM running on Proxmox handles P/E cores and how best to optimize performance for high demand tasks
I’m aiming to maximize the performance of my setup and have a few questions based on what I’ve found so far.

From my research, I understand that:
  • Proxmox utilizes the Linux scheduler, which handles P/E cores quite well.
  • Setting CPU affinity alone doesn’t prevent other processes from using the same cores, so hook scripts might be necessary to isolate cores effectively.
However, I’m still unclear on whether assigning almost all threads of my CPU to a Windows VM (with CPU type set to host) allows the VM to recognize and utilize vCPUs as P/E cores or if it sees them all as equal CPUs.

Here’s my setup:
  • CPU: i5-13600K (6 P-cores, 8 E-cores, 20 threads)
  • Proxmox CPU Type: host
  • Assigned vCPUs: 8
My questions:
  1. If I set CPU affinity to cores 0-13(all p&e cores) or 0-18(all threads except for one) and assign vCPUs (14 or 19 accordingly) with the CPU type as host, will the Windows VM recognize and efficiently utilize the P/E cores?
  2. Or does the VM treat all vCPUs as equal, and I’m limited to assigning only the 5 P-cores for optimal performance?
If I’m heading in the wrong direction or if there’s a better way to achieve maximum performance for a gaming VM, I’d greatly appreciate your guidance.

Thank you for your help!
 
Last edited:
However, I’m still unclear on whether assigning almost all threads of my CPU to a Windows VM (with CPU type set to host) allows the VM to recognize and utilize vCPUs as P/E cores or if it sees them all as equal CPUs.
The VM will see them as all the same type of virtual core.
If I’m heading in the wrong direction or if there’s a better way to achieve maximum performance for a gaming VM, I’d greatly appreciate your guidance.
You should not count hyper-threads as cores as they only give about 5%-25% extra performance in some workloads.
You should not give many of your cores to a single VM and that increases latency and is not what a clustered enterprise hypervisor is designed for. Please report stuttering and audio issues when they do. Same goes for memory.
In short: assume your CPU has only 14 cores (maybe disable hyper-threading in BIOS to give each P-core more cache?) and keep 2 for Proxmox and try not to give more than 6 to a single VM.

EDIT:
  • Proxmox utilizes the Linux scheduler, which handles P/E cores quite well.
I'm not convinced that Linux deals with them perfectly (as a lot of software does not know the difference) and I believe that KVM does not differentiate between P and E (when using Proxmox), so that's probably not great. But I could be wrong (as I mostly use Ryzen).
  • Setting CPU affinity alone doesn’t prevent other processes from using the same cores, so hook scripts might be necessary to isolate cores effectively.
I think you're right but does that matter when you want to run just one big VM? I also think that Proxmox is not designed for running a single big VM. Maybe consider other software if this is the way you want to go.
 
Last edited:
  • Like
Reactions: popaul
Thank you for your reply.
I am currently planning to run a windows11 VM for general purpose and a TrueNAS VM.

May you provide me a link to the information where it discusses about assigning many cores affecting the performance and latency? I wanted to read more about it but when I searched the internet, I wasn't able to find the related information.

I was thinking that if assigning all p/e cores perform better than only p cores, I would go for it. But I guess it doesn't work that way...
 
I am currently planning to run a windows11 VM for general purpose and a TrueNAS VM.
If I'm not mistaken, TrueNAS can also run VMs. Maybe cut out Proxmox?
May you provide me a link to the information where it discusses about assigning many cores affecting the performance and latency? I wanted to read more about it but when I searched the internet, I wasn't able to find the related information.
Use the search: https://forum.proxmox.com/search/7998581/?q=stutter&o=date
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!