ESXi 不手工设置,虚拟核心与物理核心没有对应关系,这也是建议的状态。 那个插槽数,对于Windows来说,设置为1就好了。 设置8核心,每个插槽8核心,完事。 至于虚拟机的8个核心由哪些物理核心来跑,这个就别去设置了,自动最好。 自动状态下,机器负荷不重,会优先全部用物理核心跑,负荷重了才会用超线程。 |
据我所知,最初一些软件授权是针对CPU个数的,移动到虚拟机下也保留了这个概念。 另外有线软件只能在一个CPU上运行,不能多CPU,但支持多核心,所以虚拟机保留了核心数和插槽数的概念。 还有某些场景下需要对CPU进行热添加,这个时候就只能加CPU插槽数,且加的vCPU需要跟之前的核心数一致,而不能对现有CPU加核心。 |
本帖最后由 Satan023 于 2024-7-25 16:12 编辑 实际上无所谓的 这都老黄历了 最初vmware出这个功能是为了应付针对cpu数的授权 你调10个socket每个socket 1核or1个socket 10个核对性能影响没一根毛。。。你cpu热插拔别开就行了 开了对numa有影响 我以前研究过这个问题,你看着两个就明白了: https://ewams.net/?date=2020/04/ ... sxi_which_is_better https://blogs.vmware.com/perform ... rules-of-thumb.html |
你还不能理解电话,随便设置一下,安装个win10 然后你esxi更换不同的CPU设置,在系统里看看你就能明白了 |
虚拟机没有超线程的概念 你需要8个核心就分配8个CPU就行了 你截图里的插槽是对应物理机器上几个实体CPU的概念(非物理核心数) 因为有一些商用软件是按照插槽CPU和核心数来进行授权,也可能一些超大型软件,存在一些特殊需求,所以这里才让你选择具体怎么进行分配 你图中的设置,安装完虚拟机操作系统后,将会显示为1CPU4核心(线程) 此处如果你第一个CPU设置为8,而每插槽设置为4 你安装虚拟机系统后,会显示为2CPU 4核心(线程) 至于1CPU8核心,与2CPU4核心,最终都还是你物理CPU上的线程在跑 普通用户我建议插槽都是1比较好,因为跨CPU对一些软件来说可能会有负优化 |
这个你可以去翻vmware的官方文档,虚拟处理器的部分,我记得是挺详细的 按我理解是虚拟机内部并没有线程的概念,你的4核8线程可能是没办法实现的,对应的关系其实很简单,物理机核心数量+线程数量=虚拟机可用CPU核心,不管你怎么分配,都没法实现4核心8线程,一个核心对应一个线程,如果你想分配8个线程,直接用1个CPU插槽,分配8个内核即可,剩下的交给虚拟机 |
调度关联性,输入0-7就是4核8线程,而且是cpu0上的前8个线程 要是输入0-3,20-23,就是cpu0的前两个物理核+cpu1的前两个物理核 |
Archiver|手机版|小黑屋|Chiphell
( 沪ICP备12027953号-5 )310112100042806
GMT+8, 2025-5-1 20:53 , Processed in 0.015470 second(s), 10 queries , Gzip On, Redis On.
Powered by Discuz! X3.5 Licensed
© 2007-2024 Chiphell.com All rights reserved.