我对我机器上的实际 CPU 数量有疑问。不同的方法会给出不同的结果...
htop
显示 4 个核心正在工作
lscpu | grep CPU\(s\):
显示 4
cat /proc/cpuinfo | grep processor
显示 4
cat /proc/cpuinfo | grep "cpu cores" | uniq
显示 2
sensors | grep Core
显示 2
我有点迷茫了……
编辑:
cat /proc/cpuinfo | grep 'model name'
model name : Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
答案1
这与当今 CPU 的构建方式有关。
您有 1 个硬件 CPU,其中包含 2 个内核,它们在自己的总线上传输数据。每个内核有 2 个所谓的线程,它们可以自行计算,但共享总线来传输数据。这称为多线程,如今相当常见。
但 Linux 不会显示这一点。相反,每个线程都被视为一个 CPU 核心。因此,如果您有一台六核或八核服务器,例如 htop 将显示 12 或 16 个单核。
就您而言,您的 CPU 总共有 2 个核心和 4 个线程。
再看一下你的命令(没有 uniq),它应该显示该信息 4 次,对吗?
cat /proc/cpuinfo | grep "cpu cores"