您的位置:首页 > 运维架构 > Linux

全面了解 Linux 服务器 - 1. 查看 Linux 服务器的 CPU 详细情况

2016-06-28 15:16 826 查看

1. 查看 Linux 服务器的 CPU 详细情况

判断依据:

具有相同的 core id 的 CPU 是同意个 core 超线程。

具有相同的 physical id 的 CPU 是同一个 CPU 封装的线程或核心

显示物理 CPU 个数的命令:

liuqian@ubuntu:~$ cat /proc/cpuinfo | grep 'physical id' | sort| uniq | wc -l
1


显示每个物理 CPU 中 core 的个数(即核数):

liuqian@ubuntu:~$ cat /proc/cpuinfo | grep 'cpu cores' | uniq
cpu cores    : 1


显示逻辑 CPU 的个数:

liuqian@ubuntu:~$ cat /proc/cpuinfo | grep 'processor' | wc -l
1


按理说有如下等式:

物理 CPU 个数 × 核数 = 逻辑 CPU 的个数

如果不相等的话,则表示你的服务器 CPU 支持超线程技术。在配置服务器的应用时,应以服务器的逻辑 CPU 个数为准。

查看系统内核版本号:

liuqian@ubuntu:~$ uname -a
Linux ubuntu 4.2.0-38-generic #45-Ubuntu SMP Wed Jun 8 21:21:49 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux


【附加FreeBSD相关命令】

显示 CPU 个数:

[liuqian@SYQceshi03 ~]$ dmesg|grep cpu
cpu0 (BSP): APIC ID:  0
cpu1 (AP): APIC ID:  1
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
acpi_throttle0: <ACPI CPU Throttling> on cpu0
acpi_throttle1: <ACPI CPU Throttling> on cpu1


或:

[liuqian@SYQceshi03 ~]$ sysctl -a|grep cpu
cpu    HAMMER
device    cpufreq
kern.sched.cpusetsize: 8
<cpu count="2" mask="3">0, 1</cpu>
<cpu count="2" mask="3">0, 1</cpu>
kern.ccpu: 0
kern.smp.maxcpus: 64
kern.smp.cpus: 2
net.inet.tcp.per_cpu_timers: 0
debug.acpi.cpu_unordered: 0
debug.cpufreq.lowest: 0
debug.cpufreq.verbose: 0
hw.ncpu: 2
......


从上面可以看出 CPU 个数为 2

如果CPU是多核,如何查看各颗CPU的运行状态:

[liuqian@SYQceshi03 ~] top

last pid: 42028;  load averages:  0.83,  1.66,  1.71                                                                        up 168+04:04:19 15:08:58
163 processes: 1 running, 160 sleeping, 2 stopped
CPU:  2.9% user,  0.0% nice,  1.2% system,  0.0% interrupt, 95.9% idle
Mem: 653M Active, 2302M Inact, 669M Wired, 27M Cache, 786M Buf, 291M Free
Swap: 4096M Total, 2673M Used, 1423M Free, 65% Inuse

PID USERNAME       THR PRI NICE   SIZE    RES STATE   C   TIME    WCPU COMMAND
768 mysql           42  20    0   781M   186M uwait   0  43.3H   0.00% mysqld
943 mongodb         10  20    0   650M  4880K uwait   0 457:16   0.00% mongod88098 root            17  52    0  2517M 40824K uwait   1 335:57   0.00% java
87136 root            17  20    0  2537M 40976K uwait   0 335:47   0.00% java
88884 root            17  52    0  2517M 40992K uwait   1 335:02   0.00% java
88733 root            17  52    0  2529M 40672K uwait   1 333:07   0.00% java


从上面的结果,可以知道,这是一颗双核的 CPU(看 C 那列的值的个数)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: