|
本帖最后由 chainofhonor 于 2024-3-15 22:34 编辑
HYPER-V未配置为启用处理器资源控制
https://zhuanlan.zhihu.com/p/471992419
Get-WinEvent -FilterHashTable @{ProviderName="Microsoft-Windows-Hyper-V-Hypervisor"; ID=2} -MaxEvents 1
bcdedit /set hypervisorschedulertype Classic
Hypervisor scheduler type is 0x2.
还有一个Core的调度类型
bcdedit /set hypervisorschedulertype Core
Hypervisor scheduler type is 0x3.
bcdedit /set hypervisorschedulertype Root
这个Root的调度类型就是0x4 就是WIN10默认的类型
调度种类
https://learn.microsoft.com/en-u ... r-v-scheduler-types
物理机的CPUZ跑分是692 3400
实测结果:
Root的调度类型虚拟机的CPUZ跑分最高 单核666多核2600
但是其实也高不了多少666 692 少了一点点得分而已
Core的调度类型损失比较多的性能
单核623 多核1658
优点是强制绑定到核心,不会有争抢 (看多核的得分就明白了,只有物理机一半的多核得分)
性能损失了约10%
感觉有点不划算 而这个调度模式是server2019的默认模式
Classic调度类型
单核646 多核2556
稍微比Root模式低一点
然后在Root调度模式下
测试在宿主机上把虚拟机的CPU相关性改为指定的核心
我的宿主机4核8线程
虚拟机我给了4个核心
然后我绑定到4567这4个核心
CPUZ单核跑分只有不到650 多核只有1700了
然后我绑定到0246这4个核心
CPUZ单核跑分666 多核2606
重新绑定到4567这4个核心
CPUZ单核649 多核1731(结合这2条可以得出结论,超线程大概提升了30%性能)
正常了
绑定到67这2个核心
CPUZ单核跑分549 多核860
绑定到7这1个核心
CPUZ单核跑分243 多核657
结论:
用Root调度模式
然后进任务管理器手动分配相关核心 这样的性能最好 然后安全性也不错
官网说了,不建议在server系统下使用Root调度模式
Server系统下默认的调度模式是Core 其实也够用了
在Core模式下又测试了一会CPU性能限制
限制为50% 实测效果只有38%
限制为10% 实测效果只有3%了
看来各大云服务器厂商都是没有设置CPU限制的,只设置了核心数,让虚拟机自己去争抢资源
|
|