我有两台机器,具有相同的CPU,4个numa节点和24 * 4 = 96核,我在第一台机器上使用spark local[96]
运行程序,并使用htop
查看CPU使用率。核心几乎100%被使用
[在第二个上,我使用完全相同的代码(在docker映像中打包的火花代码,并且我使用相同的映像),但是htop
可以看到所有96个内核仅具有25%到33%的CPU使用率。
我使用lscpu
进行检查,除了参数CPU MHz
(第一个约为3000,第二个为999.963),其他都相同(max MHz 3800, min MHz 1000
,超线程均被禁用)。
为什么我的Spark程序无法在第二台计算机上完全使用CPU?
检查第二个BIOS。由于某种原因未使用所有CPU速度,因此节能模式已开启或自动。