CPU个数理解

论坛 期权论坛 脚本     
匿名技术用户   2020-12-29 12:35   70   0

首先有三个概念:

物理CPU、逻辑CPU、CPU核数

  1. 一个物理CPU上有多个CPU核,如果采用了intel的超线程技术(HT), 就会再多出一倍的cpu核出来
  2. 一般情况下,逻辑cpu数=物理CPU*cpu核数
  3. 如果采用了超线程技术,则正常逻辑cpu数=物理CPU*cpu核数*2

top然后1看到的cpu个数以及java中的Runtime.getRuntime().availableProcessors()获得到的都是逻辑cpu数。

查看物理CPU的个数
#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l
查看逻辑CPU的个数
#cat /proc/cpuinfo |grep "processor"|wc -l
查看CPU是几核
#cat /proc/cpuinfo |grep "cores"|uniq
如果逻辑cpu数不是物理CPU数*CPU核数,而是其2倍,则代表采用超线程技术,cat /proc/cpuinfo |grep "core id",相同的core id即代表是同一个核的超线程。


参考资料:
http://blog.csdn.net/cbmsft/article/details/7219370
http://blog.csdn.net/chw1989/article/details/9150767

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP