我正在使用Google Cloud进行一些实验。现在,当我创建一个4 VCPU的VM实例时,这4个VCPU到实际物理机器的映射是什么?此外,4个VCPU实际上需要什么?我有一台机器说4处理器吗?或者我在拥有8个处理器的机器上获得4个节点?如果是后者,那么剩下的4个节点的利用率是否会影响我的工作表现呢?
在Google Cloud文档中,他们说For the n1 series of machine types, a virtual CPU is implemented as a single hardware hyper-thread.
事实是,我并不完全确定单个硬件超线程意味着什么。一个有趣的事实是我在我保留的8个VCPU实例上做了cat /proc/cpuinfo
,并且它有一个名为cpu cores
的字段,其值为4.再次,这表示什么?
我想了解VM实例下面的底层硬件,因为它可以帮助我优化启用了多线程的作业。
任何帮助将不胜感激。感谢。
答案 0 :(得分:0)
当我们运行cat /proc/cpuinfo
时,它显示8,这意味着系统可以访问8个线程(如您的示例),而cpu cores
是4,因为这是物理核心的数量。 / p>
关于“优化启用多线程的作业”问题,唯一的区别是您是通过管理程序而不是直接作为Intel处理器上的超线程来访问vCPU。实际上,仅由于系统管理程序层,应用程序的多线程策略应该没有什么不同。
您还可以阅读有关虚拟CPU,超线程和物理核心之间关系的讨论code。