@
cubecube @
chackchackGO @
iloveayu @
ysc3839 我刚刚做了几轮测试,我收回上面说的话哈哈哈。无论是虚拟化 windows 系统还是 linux ,总线程一致的情况下在 vmware 上设置各种处理器数和核心数的搭配组合,经过比较简单的测试发现性能差别微乎其微。这里奉上测试记录:
宿主机 CPU:9-12900K win11 22000.918
VMware 版本号:vmware 16 pro 16.2.3 build-19376536
虚拟机测试镜像:ubuntu-22.04-live-server-amd64.iso ( ubuntu 官方镜像),安装时不选择 minimized 选项
虚拟机设置:
由于宿主机开启了 Hyper-v ,所以 vmware 虚拟机设置里“虚拟化引擎”三个勾全去掉。
移除声卡 /打印机 /USB 控制器,禁用内存页面休整,为启用了 Hyper-V 的主机禁用侧通道缓解,BIOS 引导
测试工具:使用 Lemonbench 标准模式 CPU Performance Test ( Standard Mode ,3-pass @ 30sec )
[ubuntu 虚拟机+宿主机 vmware 进程强制只调用 8 大核 16 线程]
2CPU 8core
单核 4317
多核 35842
8CPU 2core
单核 4312
多核 35869
[ubuntu 虚拟机+宿主机 vmware 进程不设置 CPU 相关性,调用 8 大核 8 小核 24 线程]
1CPU 24core
单核 4326
多核 58438
24CPU 1core
单核 4345
多核 58329
8CPU 3core
单核 4334
多核 58985
Windows 跑 CPU-Z
[Windows 10 1CPU 16core 宿主机分别调用 8 大核 16 线程 /8 大核 8 小核 24 线程]
单核:756.1 751.8
多核:7583.8 8493.9
[Windows 10 2CPU 8core 宿主机分别调用 8 大核 16 线程 /8 大核 8 小核 24 线程]
单核 752.8 755.9
多核 7577.2 8444.4
附言:
虽然看上去在大小核架构的宿主机 CPU 上,不屏蔽小核,性能测试结果似乎不会有影响,也没有出现“小核拉满,大核围观”的情况。但在实际跑应用的时候,或多或少调用会出问题。
@
ragnaroks 之前也是直接改虚拟机配置文件的,后来发现有时候不太稳定?比如有时生效,有时不生效。单纯用 windows 自带任务管理器,宿主机或者虚拟机重启后相关性设置就恢复默认值了。最后还是发现 prosess lasso 可以长期保持相关性设置的稳定。另外要吐槽的是,无论用什么方法设置 VMware 虚拟机的 CPU 相关性来屏蔽小核,虚拟机开机的时候极大概率会报错:未能开启“X:\^\^.vmx"。疯狂点开机可以跳过这个错误。