很多人都知道, 直接敲 cat /proc/cpuinfo 可以看到详细的cpu信息.
信息里会分processor 0 -n, 如果你认为n就是cpu真实核数的话, 就大错特错了.
我们知道intel有超线程技术(HT), 它可以在逻辑上分一倍数量的cpu出来.所以, 光看processor数量是不准的.
真实的核数, 应该是 cpu cores 这个参数值.
[admin@transmit180 logs]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Xeon(R) CPU E5310 @ 1.60GHz
stepping : 7
cpu MHz : 1596.035
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl tm2 xtpr
bogomips : 3194.26
物理cpu数量,可以数不重复的 physical id 有几个。
查看cpu的核 数是:
cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l 物理cpu
cat /proc/cpuinfo |grep "cores"|uniq 查看cpu是几核 这两个数相乘就是cpu的核数