linux查看物理内核等信息(包括lscpu)

[root@controller01 ~]# cat /proc/cpuinfo |grep “processor”|sort -u|wc -l

80

[root@controller01 ~]#

在这里插入图片描述

查看物理CPU个数

========================================================================

由于有 超线程技术 所以有必要查看一下物理CPU个数:

超线程技术:通过此技术,英特尔实现在一个实体CPU中,提供两个逻辑线程。之后的Pentium D纵使不支持超线程技术,但就集成了两个实体核心,所以仍会见到两个线程。超线程的未来发展,是提升处理器的逻辑线程。英特尔于2016年发布的Core i7-6950X便是将10核心的处理器,加上超线程技术,使之成为20个逻辑线程的产品。

  • 对应lscpu的Socket(S)

[root@controller01 ~]# grep “physical id” /proc/cpuinfo|sort -u|wc -l

4

[root@controller01 ~]#

在这里插入图片描述

查看每个物理CPU内核个数

============================================================================

  • 对应lscpu的Core(S) per socket

[root@controller01 ~]# grep “cpu cores” /proc/cpuinfo|uniq

cpu cores : 10

[root@controller01 ~]#

在这里插入图片描述

查看每个物理CPU上逻辑CPU个数

================================================================================

对应lscpu的:总cpu(CPU(s)) / 物理cpu个数(Socket(s))

[root@controller01 ~]# grep “siblings” /proc/cpuinfo|uniq

siblings : 20

[root@controller01 ~]#

在这里插入图片描述

脚本一次性查看上面4个信息

============================================================================

  • 脚本内容

#!/bin/bash

physicalNumber=0

coreNumber=0

logicalNumber=0

HTNumber=0

logicalNumber=$(grep “processor” /proc/cpuinfo|sort -u|wc -l)

physicalNumber=$(grep “physical id” /proc/cpuinfo|sort -u|wc -l)

coreNumber=$(grep “cpu cores” /proc/cpuinfo|uniq|awk -F’:’ ‘{print $2}’|xargs)

HTNumber=$((logicalNumber / (physicalNumber * coreNumber)))

echo “****** CPU Information ******”

echo “Logical CPU Number : ${logicalNumber}”

echo “Physical CPU Number : ${physicalNumber}”

echo “CPU Core Number : ${coreNumber}”

echo “HT Number : ${HTNumber}”

echo “*****************************”

  • 运行结果

[root@controller01 ~]# ./cpuinfo # cpuinfo是自定义名称

****** CPU Information ******

Logical CPU Number : 80

Physical CPU Number : 4

CPU Core Number : 10

HT Number : 20

判断是否开启了超线程

=========================================================================

如果多个逻辑CPU的"physical id"和"core id"均相同,说明开启了超线程

或者换句话说

逻辑CPU个数 > 物理CPU个数 * CPU内核数 开启了超线程

逻辑CPU个数 = 物理CPU个数 * CPU内核数 没有开启超线程

建议使用lscpu看信息

===========================================================================

最开始说到了 有些服务器通过命令筛选是没有结果的,但能通过 lscpu 查看,如下图:

[root@node-55 ~]# grep “cpu cores” /proc/cpuinfo|uniq

[root@node-55 ~]#

[root@node-55 ~]# grep “siblings” /proc/cpuinfo|uniq

[root@node-55 ~]#

[root@node-55 ~]# lscpu

Architecture: ppc64le

Byte Order: Little Endian

CPU(s): 80

On-line CPU(s) list: 0,8,16,24,32,40,48,56,64,72

Off-line CPU(s) list: 1-7,9-15,17-23,25-31,33-39,41-47,49-55,57-63,65-71,73-79

Thread(s) per core: 1

Core(s) per socket: 10

Socket(s): 1

NUMA node(s): 1

Model: 2.0 (pvr 004d 0200)

Model name: POWER8 (raw), altivec supported

L1d cache: 64K

L1i cache: 32K

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值