CPU 扫盲(核心数/线程数)

  处理器(CPU)决定了电脑的性能等级,是一个需要考虑的核心因素。CPU 从早期的单核,发展到现在的双核,多核。除了核心数之外,还有线程数之说,下面会对这两个概念进行扫盲。   

CPU 个数

 CPU 的个数是指物理上,也就是硬件上存在着几颗物理 CPU,指的是真实存在的处理器的个数,1个代表1颗、2个代表2颗 CPU 处理器。

CPU 核心数

 一个核心就是一个物理线程,单核双核多核,指的就是物理核心的数目。   

CPU 线程数

 CPU 的线程数概念仅仅只针对 Intel 的 CPU 才有用,因为它是通过 Intel 超线程技术来实现的,最早应用在 Pentium4 上。如果没有超线程技术,一个 CPU 核心对应一个线程(因此对于一个CPU,线程数总是大于或等于核心数的)。所以,对于 AMD 的 CPU 来说,只有核心数的概念,没有线程数的概念。
 CPU 之所以要增加线程数,是源于多任务处理的需要:线程数越多,越有利于同时运行多个程序,因为线程数等同于在某个瞬间 CPU 能同时并行处理的任务数。
 因此,线程数是一种逻辑的概念,简单地说,就是模拟出的 CPU 核心数。一个核心最少对应一个线程,但英特尔有个超线程技术可以把一个物理线程模拟出两个线程来用,充分发挥 CPU 性能,即一个核心可以有两个到多个线程。

Linux 中获取处理器信息

1
2
3
4
5
6
7
8
# 查看 cpu 型号
sudo dmidecode -s processor-version
# 查看 cpu 个数
grep 'physical id' /proc/cpuinfo | sort -u | wc -l
# 查看核心数
grep 'core id' /proc/cpuinfo | sort -u | wc -l
# 查看线程数
grep 'processor' /proc/cpuinfo | sort -u | wc -l

  

文章目录
  1. 1. CPU 个数
  2. 2. CPU 核心数
  3. 3. CPU 线程数
  4. 4. Linux 中获取处理器信息