在判断当前是否开启了超线程之前,需要先判断另外几个数据:
- `+ I2 }* i" {0 {1,物理CPU个数: [backcolor=rgb(255, 255, 255) !important][size=0.9em]1
! w/ u2 n2 ^ C6 F% t7 q2
6 W6 @0 } J5 z4 f& R: m3 ) }8 r1 ?' x9 S( N1 L) o
| [root@localhost ~]# cat /proc/cpuinfo | grep "physical id" | sort | uniq
6 ~# H4 z' V# Dphysical id : 0
. T, O* m S; O3 r( \$ K2 [physical id : 1
. ~6 { H5 ~1 a
+ y4 F1 i k" p) a( e |
K8 O: E5 }$ g7 c: {) R" x3 ~' d: A* ^% P- p/ h/ b9 J! s% P; ]5 m# s
可以看到物理CPU个数为2,物理CPU也就是机器外面就能看到的一个个CPU,每个物理CPU还带有单独的风扇。
4 S6 h. H2 V6 s+ P2,每个物理CPU的逻辑核数: [backcolor=rgb(255, 255, 255) !important][size=0.9em]1 7 r d6 H# r- n) F
2
. I! n% D1 @9 u$ f. ~ | [root@localhost ~]# cat /proc/cpuinfo | grep "cores" | uniq ) a& Y0 L" [( c0 y5 F4 ^& s+ W
cpu cores : 6
+ d7 @* C4 x( i9 n 1 _% L7 J9 j( o5 d+ X4 f
|
! v+ _" u& w# T7 V, [. \" x3 B
7 r& h2 _# q" b) K1 F3,系统整个cpu线程数: [backcolor=rgb(255, 255, 255) !important][size=0.9em]1
$ g2 A% @( c# ^1 p& h2 _+ m, m& |3 A ~$ n4 c- t
| [root@localhost ~]# cat /proc/cpuinfo | grep "processor" | wc -l + x- ]6 R5 d, \6 |( A5 x
24 # S. r8 t% h0 R7 U8 E. Y# \
8 M/ D/ `8 P) g | k6 H: A' J# e& H
5 j1 ]; R; l9 A' Q, B1 q1 d: n有了三面几个数据,就可以判断当前是否开启了超线程了,没开启超线程的情况下,系统的cpu线程数=物理CPU个数*每个物理CPU的逻辑核数*1,因为每个逻辑核只跑了1个cpu线程,如果开启了超线程,那么cpu线程数=物理CPU个数*每个物理CPU的逻辑核数*N,因为每个逻辑核跑了2个cpu线程。所以,上面的24=2*6*2,可以判断当前开启了超线程。 [backcolor=rgb(255, 255, 255) !important][size=0.9em]1
$ _$ ~, @9 \' [8 S0 H5 g/ U2 3 W* t& A3 k9 _& N! ?6 P' A
3 : {- V! o; ]4 F( k! A" b
| [root@localhost ~]# cat /proc/cpuinfo | grep "model name" | uniq
1 o% [$ I1 x8 I P* ~model name : Intel(R) Xeon(R) CPU X5670 @ 2.93GHz
8 F5 g$ t: a% U4 t( l& t[root@localhost ~]# 9 { a4 J9 }; Q3 X& b5 r! A
& w2 M$ Y3 F& _; J" a# g | 7 O" {- W; p M* ? Q
, |- I8 K' r: u5 G0 j" |& ^[backcolor=rgb(255, 255, 255) !important][size=0.9em]1
$ R/ @% F$ n; G ]' h2
! H% s- w2 Y) \7 p/ d' w4 `# I3 2 g5 S7 r9 h8 I
4 - N$ J: m; F x& n& R, ]
5
" s+ W' b% ]5 p( ?6
! }) F" |: M5 j+ Y! J7 6 X3 ~& M& _ ?2 w0 d" c4 m
8
" w& y! ]1 w7 Y2 z: u( O! N- Y9
; n- E* I! N+ e$ P; [10
# n8 j6 B4 U2 s D- d | [root@localhost ~]# cat /proc/cpuinfo | grep "physical id" | sort | uniq 3 T; z8 N6 e8 Z+ R& Q; T
physical id : 0 ' A! i) ~% U% w" o' @
physical id : 1 ; h+ ~: c. F. I" z
[root@localhost ~]# cat /proc/cpuinfo | grep "cores" | uniq
& H1 N. p, d2 d( ?9 i# d9 Ucpu cores : 4
; G( g1 ?3 }* o h4 C+ W[root@localhost ~]# cat /proc/cpuinfo | grep "processor" | wc -l 3 B4 f6 `; Q# t+ z/ @% l
8
, f+ n& T B* C6 q6 E2 s! X[root@localhost ~]# cat /proc/cpuinfo | grep "model name" | uniq 2 [ U! }0 W- H4 S: s
model name : Intel(R) Xeon(R) CPU E5504 @ 2.00GHz 4 M+ L5 z; E* U! v& M4 g7 Q' _
[root@localhost ~]#
8 \* g$ b0 \" p( N6 X2 R7 j. ? ^0 k: B# W2 P7 p
|
2 T: x+ G W0 _- C t, i8 g
& O. D# L& h! T4 f4 Z9 J+ y |