CPU数和核心数概念和Linux查询命令

以下内容结合网上资料整理而来:

linux 下查看机器是cpu是几核的

几个cpu

more /proc/cpuinfo |grep "physical id"|uniq|wc -l

每个cpu是几核(假设cpu配置相同)

more /proc/cpuinfo |grep "physical id"|grep "0"|wc -l

cat /proc/cpuinfo | grep processor

1. 查看物理CPU的个数
#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l
 
2. 查看逻辑CPU的个数
#cat /proc/cpuinfo |grep "processor"|wc -l
 
3. 查看CPU是几核
#cat /proc/cpuinfo |grep "cores"|uniq
 
4. 查看CPU的主频
#cat /proc/cpuinfo |grep MHz|uniq

 

uname -a

Linux euis1 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT 2007 i686 i686 i386 GNU/Linux

(查看当前操作系统内核信息)

 

cat /etc/issue | grep Linux

Red Hat Enterprise Linux AS release 4 (Nahant Update 5)

(查看当前操作系统发行版信息)

 

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

      8  Intel(R) Xeon(R) CPU            E5410   @ 2.33GHz

(看到有8个逻辑CPU, 也知道了CPU型号)

 

cat /proc/cpuinfo | grep physical | uniq -c

      4 physical id      : 0

      4 physical id      : 1

(说明实际上是两颗4核的CPU)

 

getconf LONG_BIT

32

(说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)

 

cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l

8

(结果大于0, 说明支持64bit计算. lm指long mode, 支持lm则是64bit)

 

如何获得CPU的详细信息:

linux命令:cat /proc/cpuinfo

用命令判断几个物理CPU,几个核等:

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

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

每个物理CPU中Core的个数:
# cat /proc/cpuinfo | grep "cpu cores" | wc -l

是否为超线程?
如果有两个逻辑CPU具有相同的”core id”,那么超线程是打开的。

每个物理CPU中逻辑CPU(可能是core, threads或both)的个数:
# cat /proc/cpuinfo | grep "siblings"

 

 

1.物理cpu数:主板上实际插入的cpu数量,可以数不重复的 physical id 有几个(physical id)
2.cpu核数:单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores)
3.逻辑cpu数:简单来说,它可使处理器中的1颗内核,如2颗内核那样在操作系统中发挥作用。
这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑cpu=物理CPU个数×每颗核数x2。
总核数 = 物理CPU个数 × 每颗物理CPU的核数。
总逻辑CPU数 = 物理CPU个数 ×每颗物理CPU的核数 × 超线程数。
所以这算双核的。




扩展资料:
1、物理CPU:
物理CPU就是计算机上实际配置的CPU个数。
在linux上可以打开cat /proc/cpuinfo 来查看,其中的physical id就是每个物理CPU的ID,能找到几个physical id就代表计算机实际有几个CPU。
在linux下可以通过指令 grep ‘physical id’ /proc/cpuinfo | sort -u | wc -l 来查看物理CPU个数。
2、cpu核数:

linux的cpu核心总数也可以在/proc/cpuinfo里面通过指令cat /proc/cpuinfo查看的到,其中的core id指的是每个物理CPU下的cpu核的id,能找到几个core id就代表计算机有几个核心。

也可以使用指令cat /proc/cpuinfo | grep “cpu cores” | wc -l来统计cpu的核心总数。
3、逻辑CPU:

操作系统可以使用逻辑CPU来模拟出真实CPU的效果。在之前没有多核处理器的时候,一个CPU只有一个核,而现在有了多核技术,其效果就好像把多个CPU集中在一个CPU上。
当计算机没有开启超线程时,逻辑CPU的个数就是计算机的核数。而当超线程开启后,逻辑CPU的个数是核数的两倍。
实际上逻辑CPU的数量就是平时称呼的几核几线程中的线程数量,在linux的cpuinfo中逻辑CPU数就是processor的数量。
CPU中心那块隆起的芯片就是核心,是由单晶硅以一定的生产工艺制造出来的。
CPU所有的计算、接受/存储命令、处理数据都由核心执行,各种CPU核心都具有固定的逻辑结构一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有科学的布局。
参考资料:维基百科-多核CPU硬件架构介绍

什么叫双核CPU与双CPU有什么区别?

什么叫双核CPU与双CPU有什么区别?目前服务器市场可以说是新产品新技术层出不穷,光是服务器的核心CPU除了主频等参数外,最让人不明白的就是所谓的双核,电视报纸广告上也是频繁刊登双核服务器的广告。双核CPU与双CPU还有以前的超线程都有什么区别呢?我们选择服务器应该采取双核心CPU还是双CPU呢?

在一两年前CPU领域就出现了一个叫做超线程的技术,具备了超线程技术的CPU可以更高效的运行程序,特别是支持对程序的并发执行。而如今在个人计算机和服务器市场又出现了一个叫做双核心CPU的概念,他和超线程有哪些区别?性能提升情况如何呢?他又能否和传统的双CPU画等号呢?我们先要对这三者的概念进行了解。

一、三者的工作原理和概念:

(1)超线程(HT):

超线程(Hyperthreading Technology)技术就是通过采用特殊的硬件指令,可以把两个逻辑内核模拟成两个物理芯片,在单处理器中实现线程级的并行计算,同时在相应的软硬件的支持下大幅度的提高运行效能,从而实现在单处理器上模拟双处理器的效能。其实,从实质上说,超线程是一种可以将CPU内部暂时闲置处理资源充分“调动” 起来的技术。

“超线程”的实现条件需要CPU的支持,主板芯片组和主板BIOS的支持,另外操作系统和应用软件方面也需得到应有的支持。说白了超线程就是通过软件的手段模拟出双个逻辑内核进行工作,运行效果尽量接近两个物理核心的性能。

不过超线程也存在着致命的不足,首先他在windows 2000下无法使用,因为WIN2000不支持超线程,只有WIN XP以上的系统才可以使用HT。另外由于HT是软件模拟出两个核心,所以模拟出来后的两个核心是分享物理缓存的,从而使物理缓存大小减半,另外因为超线程技术是对多任务处理有优势,因此当运行单线程运用软件时,超线程技术将会降低系统性能,尤其在多线程操作系统运行单线程软件时将容易出现此问题。

(2)双核心:

所谓双核心处理器,简单地说就是在一块CPU基板上集成两个处理器核心,并通过并行总线将各处理器核心连接起来。双核心并不是一个新概念,而只是CMP(Chip Multi Processors ,单芯片多处理器) 中最基本、最简单、最容易实现的一种类型。

换言之双核心处理器就是基于单个半导体的一个处理器上拥有两个一样功能的处理器核心。这样就将两个物理处理器核心整合入一个核中,在任务繁重时,两个核心能相互配合,让CPU发挥最大效力。两个能互补的核心运行起来性能是非常不错的,例如使用Intel奔腾D双核处理器就相当于你有了两台采用奔腾4的主机

说超线程是用软件来模拟出双核的效果,那么现在所说的双核心就是真正意义上的两个核心。他弥补了超线程适用系统比较少的缺点,可以广泛用于windows操作系统的多个版本;他还有效的解决了双核运算中出现的缓存分离与数据冲突错误问题。

(3)双CPU:

前面所说的双核心是在一个处理器里拥有两个处理器核心,核心是两个,但是其他硬件还都是两个核心在共同拥有,而双CPU则是真正意义上的双核心,不光是处理器核心是两个,其他例如缓存等硬件配置也都是双份的。

二、三者的布局结构:

如果我们把CPU比做一套住房的话,那么超线程技术实际上就相当于把一间房子人为的通过添加屏风或者推拉门来划分成两小间,虽然表面上每间居住者可以自己干自

己的事,不互相影响,但是在出门时都要走同一个大门。

而双核心的实际上就相当于一套两居室,房子里有两个屋子,每个屋子都是独立存在的,不互相干扰。出门时也可以各走各的卧室门到大门口。不过如果因为某些原因,例如放音响声音过大等情况,在同一套两居室里的两个屋子之间也会相互影响。

接下来我们再看看双CPU,他就是名副其实的两套房子,每个房子有每个房子的大门,我们出入大门不会像超线程那样共用一个门,也不会出现双核心那样一个房间因为某些原因影响另一间,即使某个房子播放音响也不会影响到另外一套房子。

不过从价格上讲自己划分出一个房间的超线程无疑是最最便宜的,而需要花费高额银子购买两套房子住的双CPU是最贵的。

三、三者运行性能比较:

CPU运行性能最关键的就是运行速度,那么究竟这三者在运行速度方面表现如何呢?我们依然通过比喻的方法来区分。

假设CPU是一个运输卡车,货物就是我们要计算的信息,CPU运算就类似于卡车运输货物。同一时间运送的货物越多,说明CPU运算能力越强。

单CPU系统---相当于一辆卡车在一条车道上跑。由于车少,所以运输能力有限。以往CPU生产厂商都是在不断的提高卡车的载重即主频来提高他的运输能力。

双CPU系统---相当于两辆卡车在两条相交的车道上跑。每辆车大部分都在自己的路上跑,但偶尔会相遇、停车避让。由于车多路宽,所以双CPU运输能力最强。

HT(超线程)系统---相当于一辆双层卡车在一条车道上跑。由于是双层的,所以猛地一看以为是两辆车在跑,其实只有一辆。不过因为双层涉及到车高以及捆绑等问题,有的时候遇到限高的桥梁,需要人为的将货物卸下,手工搬运。所以说HT超线程适用的条件比较苛刻。

双核心CPU系统,相当于两辆卡车在一条车道上跑。

虽然他运输的货物能力提高了,而且也不会频繁产生类似于HT超线程那样的冲突,但是因为他们都在一条车道上跑,所以互相避让减速的频率要比双CPU高得多。所以他的运输能力要比真正的双CPU系统差。

总结:

所以通过上面的结构比较,运行性能比较,我们可以得出以下结论,那就是在运行性能方面双CPU>双核CPU>超线程CPU>单CPU;而在价格上也是双CPU>双核CPU>超线程CPU>单CPU。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值