EDA365电子论坛网

标题: 在linux环境下如何查看CPU信息 [打印本页]

作者: ulppknot    时间: 2019-9-26 15:02
标题: 在linux环境下如何查看CPU信息
在windows下查看CPU的详细信息我们必须要下载专门的软件。但在linux下查看CPU的各项信息十分方便,在terminal中输入cat /proc/cpuinfo即可,如图所示。
2 P4 h! B6 e7 V2 F8 L+ Z

' t; r9 e* @- _. Z
+ i$ t/ L5 o& P4 S+ d- T
" e; i2 r: u: e. ?7 [; @按下回车,你就会看到列出的所有CPU信息
8 L$ H/ p& Y% P  v7 Y
8 u# N" O. l6 K0 z5 C
$ X. k+ y5 B/ R* }8 O
: K& \/ `9 Q8 T) o0 D7 n$ x

* j) g2 ]0 b. z% R也许你现在看不懂,别急,我们先来了解一下CPU的几种分类:! N5 c: M; t9 Z: S# Q: N4 V* F, P

2 v- [( B# M: o- s* x5 r① 物理CPU   A" `& y# A+ b! Z+ C- S
5 z7 T6 X4 n' d
              实际Server中插槽上的CPU个数6 c; _# b! C, \9 f- l* n
              物理cpu数量,可以数不重复的 physical id 有几个8 s2 @8 ^2 u3 z* v: ~% |0 ?
           
% Y+ c: Q  K. B0 \0 [② 逻辑CPU " z" G- p- E5 M3 L
              " u1 _2 I# {. c5 M% z
              信息内容分别列出了processor 0 – n 的规格。这里需要注意,如果你认为n就是真实的cpu数的话, 就大错特错了8 w; g( y" d! H
              一般情况,我们认为一颗cpu可以有多核,加上intel的超线程技术(HT), 可以在逻辑上再分一倍数量的cpu core出来) ~- I. l6 v1 P# [
              逻辑CPU数量=物理cpu数量 x cpu cores 这个规格值 x 2(如果支持并开启ht)
( C  n) D0 ?9 J; M" A6 {; U              ( x8 j4 I6 K1 Z" C# t% m& F
③ CPU核数

/ A; A/ R) ]% w  w. E& _; j& j" G- j# m! O
              这个叫不用说的吧,这就是我们常说的几核。
3 x. f5 Z% g" O( C) G  q# s7 i
/ e5 G  p; ~4 w5 T/ v& Y9 t了解了这些概念以后,我们再来看看在终端中给我们列出的信息具体代表了什么意思。
1 k  i9 `* ]$ Z6 {0 f+ R' i4 d% d1 O
processor :系统中逻辑处理核的编号。对于单核处理器,则课认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核$ Q5 y, h: \9 \( W+ x( p" V
    - s0 x9 h: y! m$ ~+ y8 P& L( @: C
    vendor_id :CPU制造商
+ h7 Z0 K0 r9 g( x    - |6 H% Z1 Y+ I" c! T
    cpu family :CPU产品系列代号) u: u/ H% R9 I5 Q
    / k" c! P, V/ A, m8 r: b
    model   :CPU属于其系列中的哪一代的代号) h  Z( u( Y# C3 X# F6 l) ^
    6 [$ b. O: }. J' f# }3 y
    model name:CPU属于的名字及其编号、标称主频
' t& C% l) L5 x! [    5 z; w, ^* ?3 k7 H# E) Z& L
    stepping   :CPU属于制作更新版本
' Q- E( B/ D: @' v   
3 m  P( @! r5 ^7 |    cpu MHz   :CPU的实际使用主频0 f: L5 g. S$ Q! H( _  M
   
. w$ j5 E/ ]. ?6 \; p    cache size   :CPU二级缓存大小0 D  S  n) ?  }- I4 x  K) l
   
4 P1 i, [# U" ~    physical id   :单个CPU的标号7 }8 z  ?$ r' Y
    " p  S& Y! s. o$ ]: e; i- X9 ?
    siblings       :单个CPU逻辑物理核数8 W8 w! I2 K8 l+ c- X9 ~
   
+ N) E0 T# S8 E    core id        :当前物理核在其所处CPU中的编号,这个编号不一定连续0 D0 h# }. i6 ~( E( g$ {
   
5 c8 P: w1 [, `1 [4 H    cpu cores    :该逻辑核所处CPU的物理核数
, B- ?6 c9 e2 p  t# |8 U- p    ) t+ L% c/ }9 V
    apicid          :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续, v* K, C$ \2 ]9 u" \0 f% _1 c: `% `6 ^0 n
    " }  C* _8 Q2 l; y; T- `
    fpu             :是否具有浮点运算单元(Floating Point Unit)
& E- w  ^, t; [/ n: T    2 U9 X0 M# Q% B" L1 U2 g) ]& @1 s
    fpu_exception  :是否支持浮点计算异常" U" @2 @8 X' g& E3 b
   
3 R0 u- x5 x, ~' Y( }% I    cpuid level   :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容/ \; P7 \$ i+ N6 C' ?9 d
   
7 C. M6 A% B4 M    wp             :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
1 F6 p) l) ]4 W) j& U" N, a   
0 ?: r, f( U( ~6 l7 g; q+ j4 a5 `9 n# M3 H    flags          :当前CPU支持的功能
! S# u) h; Q3 k0 u7 o+ _   
; e( P. n: }6 t: Z7 f    bogomips   :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)
9 E0 w2 H/ ~6 F# }0 k5 A, q1 e$ Q# _   
  _+ P2 \" e) ]# P    clflush size  :每次刷新缓存的大小单位
% \" c  X, @( @: o' `: H    % f" Z$ I; m8 h7 I1 V
    cache_alignment :缓存地址对齐单位
7 a, m; m# g  R! @9 P; q5 e   
5 v! P6 t- Z* y  I8 W) ?: ]    address sizes     :可访问地址空间位数& F! V7 w. {: V0 B( s( Z5 a, m
7 B6 K# m8 r8 Y: E! f& O7 _
如图列出的是计算机中CPU所以的逻辑核的信息,用以processor为编号依次显示出。
. n# F3 E; j, ]
4 Z# g" d, d- D, Z- U在这里我仅列出本人计算机的processor 0,对与一般的个人电脑单个CPU而言,物理核与逻辑核相等,但如何采用超线程技术的话,逻辑核=物理核*2,看是否采用超线程技术看cpu cores与siblings是否相等,如果相等,则不采用超线程技术,如果不相等,则采用HT。在这里本人比较推荐购买有HT的CPU,如2核4线程,4核8线程的,因为其性能几乎与4核4线程,8核8线程差不多,但是在价格方面要便宜很多。
6 a7 C& \& O; \( }+ k
$ Z8 n% ?( l0 n; l0 `如何在linux中查看物理核,逻辑核,物理CPU个数呢?/ e; Z- G+ [+ g  g8 A1 w7 `
; T* l* S2 E" w( B
  ① 查看系统物理CPU的个数  cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l, c- y, x( u( T, c, G
② 查看逻辑核的个数    cat /proc/cpuinfo |grep "processor"|wc -l  
* J( y6 x) M/ Y
- O; Q- B; a; g" Z. G查看物理核的个数   cat /proc/cpuinfo | grep "cpu cores" | uniq+ M$ E4 y0 N$ s9 D  h4 B6 M7 _

" Q' g% w! U* T- R$ k9 I: I超线程技术是又INTEL提出来的,它指的是CPU在双核的基础上为其每个核心提供两个线程的运算和处理能力,特别是让你在多任务运行的时候减少等待的时间,给你打个简单的比方,比如说你的CPU的运算能力相当于只有两个车道,在车流量的的时候就会造成堵车的现象,超线程技术在这时为你虚拟的增加了两条通道,相当于四车道,这样至少可以减缓堵车的现象,并且在一般情况下都保证畅通无阻。/ ]' y* l, j0 Z. c

6 K) y, ]( N; I1 d我的CPU是双核4线程,有4个逻辑核,2个物理核,启动了超线程技术,电脑还是蛮不错的。。。。
2 E4 J4 l. O$ y+ I2 @$ p5 }1 u. Q4 f) v: @8 P
若要是想看主机内部各组件的信息,可以用lspci命令(就不贴图啦)。+ `6 Z7 a$ \+ [0 x  b8 j+ p: N

7 H1 Y& N8 G- E1 j希望能和大家交流的过程中,一同进步。
' [5 p: b" h% l* J/ Q6 }1 I2 S1 N
) n+ M# U$ P/ }* F1 T   . @$ {* ~; j( Y

: r# J$ _' z! b; M9 i
9 f6 f' a* w5 t: R" D- e. T; a0 |
6 \4 k7 u* a6 Z! w

作者: fanichicl    时间: 2019-9-26 18:58
看看如何在linux环境下如何查看CPU信息。




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2