序
大家都知道,intel的cpu拥有超线程技术,可以为一个逻辑核心开启两个处理线程。在windows下,我们可以轻松的通过任务管理器查看到是否开启了超线程技术。那在linux下面,我们如何查看呢。
三步走
在linux系统中,我们不能直接查看到是否开启了超线程,但是可以通过几个相关参数来判断。他们分别是,物理CPU数,每个CPU的逻辑核数,CPU线程数。
- 物理CPU数
$ cat /proc/cpuinfo | grep "physical id" | sort | uniq
physical id : 0
physical id : 1
以上输出信息,代表当前的机器拥有两个物理CPU
- 单个CPU的逻辑核心数量
$ cat /proc/cpuinfo | fgrep "cores" | uniq
cpu cores : 6
以上输出信息,代表当前机器的每个CPU拥有6个逻辑核心,如果物理CPU的逻辑核心数量不同,则会显示多行
- 系统CPU线程数
$ cat /proc/cpuinfo | grep "processor" | wc -l
12
以上输出信息,代表当前机器拥有12个CPU线程
通过综合以上信息,可以发现,这台机器拥有2和物理CPU,每个CPU有6个逻辑核心,系统一共拥有12个CPU线程。显然没有开启多线程