我有一个配置此配置的Windows桌面:Intel Xeon(R)CPU E5645 @ 2.40GHz(2个处理器)
具有24 GB RAM和64位操作系统
当我运行以下代码时。
var cpuCount = require('os').cpus().length;
它将cpuCount返回为24
有人可以解释一下究竟是什么意思吗?它是如何确定我只有2个处理器的24个CPU。
答案 0 :(得分:4)
高级技术部分。它表示您的CPU支持Hyper-Threading
来自维基百科:
对于物理上存在的每个处理器核心,操作系统寻址两个虚拟或逻辑核心......
因此,您有两个处理器,每个处理器有6个物理内核(但是12个逻辑或虚拟):
(2 x 6)x 2 = 24
另请查看node.js docs:
os.cpus()
返回一个对象数组,其中包含有关安装的每个CPU /核心的信息:模型,速度(以MHz为单位)和时间(包含CPU /核心所用的毫秒数的对象:user,nice,sys,idle,和irq)。
这就是require('os').cpus()
返回的数组包含24个元素的原因。