Docker 同一程序无法完全使用另一台计算机上的CPU资源

Docker 同一程序无法完全使用另一台计算机上的CPU资源,docker,apache-spark,cpu-usage,Docker,Apache Spark,Cpu Usage,我有两台机器,具有相同的CPU、4个numa节点和24*4=96个核,我使用sparklocal[96]运行我的程序,使用htop查看CPU使用情况,在第一台机器上,96个核的使用率几乎为100% 在第二个版本中,我使用了完全相同的代码(docker image中打包的spark代码和我使用的是相同的图像),但是htop可以看到所有96个内核只有25%到33%的CPU使用率 我使用lscpu来检查,除了参数CPU MHz(第一个大约3000,第二个是999.963)之外,其他参数都是相同的(ma

我有两台机器,具有相同的CPU、4个numa节点和24*4=96个核,我使用spark
local[96]
运行我的程序,使用
htop
查看CPU使用情况,在第一台机器上,96个核的使用率几乎为100%

在第二个版本中,我使用了完全相同的代码(docker image中打包的spark代码和我使用的是相同的图像),但是
htop
可以看到所有96个内核只有25%到33%的CPU使用率

我使用
lscpu
来检查,除了参数
CPU MHz
(第一个大约3000,第二个是999.963)之外,其他参数都是相同的(
max-MHz 3800,min-MHz 1000
,超线程都被禁用)


为什么我的Spark程序不能完全使用第二台机器上的CPU?

检查第二台机器上的BIOS。由于某些原因,我们没有使用所有的CPU速度,可能是节能模式开启或自动。

在我们确认后,很可能是冷却系统的问题