Out of curiosity I tried to replicate your problem.
Details:
- Windows 2019 Eval VM fully updated, with VMware tools installed.
- Host has SMT still enabled. Did not try to disable it.
- Selected 'Enable virtualized CPU performance counters' on the CPU. Didn't try without.
- In order of testing: Tried with 1, 2, 4 and 3 vCPU.
- 1 core per socket.
- No NUMA node affinity testing.
- One VM running on host, no more.
- Software used to get the CPU up to speed: CineBench R23
- Results in vSphere monitor graphs:
- 1 vCPU got me around 3 GHz, CPU temps around 31c
- 2 vCPU got me around 6 GHz, CPU temps around 31c
- 4 vCPU got me max 10.005 GHz, CPU temps around 37c
- 3 vCPU got me max 8.459 GHz, forgot to look at CPU temps (6 + 2,5 ?)
- Not recorded: Tried 8 vCPU but that looked to me all cores where at 2.5-ish GHz.
- Didn't check esxtop.
- Did check the host graphs (host web interface) but looked the same. Didn't check all the time, focussed on vSphere graphs.
- In Windows task manager had 2.00 GHZ for Speed and Base speed. Did not change in any of the tests.
- Testing started just after 7:30 PM. Anything before that: ignore.
- The spike just before 7:45 PM is me hitting the wrong button in the 2 vCPU test in CineBench R23 and trying again around 7:45 PM.
Host graph - look at dark pink/purple-ish line for MHz:
VM graph:
As I could see it, vSphere can detect a 1 and 2 vCPU going to 3 GHz, but this info is not communicated to the guest VM.
What could be tested next is building 4 Win2019 VM's and set the NUMA node affinity for each. Then test again and see what speeds you get with 1, 2, 4 and 3 vCPU, though it might be harder to filter that out. Maybe the higher speed cores will be spread out over the different dies.
Just curious if someone with another brand motherboard and 7551 experiences the same.
I'll leave it for what it is for now.