posts - 158,  comments - 28,  trackbacks - 0

物理CPU个数:cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

逻辑CPU个数:cat /proc/cpuinfo | grep "processor" | wc -l

一个物理CPU几个核数:cat /proc/cpuinfo | grep "cpu cores” 


cpu型号和逻辑cpu个数

 cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

 24  Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz


“siblings”指的是一个物理CPU有几个逻辑CPU

”cpu cores“指的是一个物理CPU有几个核


不应该按照flags里是否有 ht 标志来判断系统是否有超线程能力,而应该:

如果“siblings”和“cpu cores”一致,则说明不支持超线程,或者超线程未打开。

如果“siblings”是“cpu cores”的两倍,则说明支持超线程,并且超线程已打开。


概念

① 物理CPU

实际Server中插槽上的CPU个数

物理cpu数量,可以数不重复的 physical id 有几个

② 逻辑CPU 

 /proc/cpuinfo 用来存储cpu硬件信息的

信息内容分别列出了processor 0 –processor n 的规格。这里需要注意,n是逻辑cpu数

一般情况,我们认为一颗cpu可以有多核,加上intel的超线程技术(HT), 可以在逻辑上再分一倍数量的cpu core出来

逻辑CPU数量=物理cpu数量 x cpu cores 这个规格值 x 2(如果支持并开启ht)    

备注一下:Linux下top查看的CPU也是逻辑CPU个数

 ③ CPU核数

一块CPU上面能处理数据的芯片组的数量、比如现在的i5 760,是双核心四线程的CPU、而 i5 2250 是四核心四线程的CPU

一般来说,物理CPU个数×每颗核数就应该等于逻辑CPU的个数,如果不相等的话,则表示服务器的CPU支持超线程技术

查看CPU信息

当我们 cat /proc/cpuinfo 时、

具有相同core id的CPU是同一个core的超线程

具有相同physical id的CPU是同一个CPU封装的线程或核心


下面举例说明

① 查看物理CPU的个数

#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l  

2  

② 查看逻辑CPU的个数

#cat /proc/cpuinfo |grep "processor"|wc -l  

24  

③ 查看CPU是几核

#cat /proc/cpuinfo |grep "cores"|uniq  

6


#通过lscpu命令能方便的查看cpu信息

posted on 2015-09-08 09:34 David1228 阅读(196) 评论(0)  编辑  收藏 所属分类: Linux

<2015年9月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

常用链接

留言簿(3)

随笔分类

随笔档案

文章档案

新闻分类

新闻档案

相册

收藏夹

Java

Linux知识相关

Spring相关

云计算/Linux/虚拟化技术/

友情博客

多线程并发编程

开源技术

持久层技术相关

搜索

  •  

积分与排名

  • 积分 - 248666
  • 排名 - 188

最新评论

阅读排行榜

评论排行榜