未完待续......
查看GPU信息
nvidia-smi # 查看当前GPU使用情况
watch -n 5 nvidia-smi # 查看实时GPU使用情况(每5秒)
参数介绍:
GPU: 序号
Fan: 风扇转速, 在0~100%之间
Temp: 温度(摄氏度)
Perf: 性能, 在P0(最大)~P12之间
Pwr: 能耗
Persistence-M: 持续模式是否打开, 虽然增加能耗但是可以更快启动该GPU
Bus-Id: 关于GPU总线
Disp.A: GPU的显示是否初始化
Memory-Usage: 显存使用率
Volatile Uncorr. ECC: 关于ECC
GPU-Util: 浮动的GPU使用率
Compute: 计算模式
显存和GPU的关系类似于内存和CPU的关系。
Processes显示每块GPU上每个进程所使用的显存情况。
查看CPU信息
CPU架构
(1)多个物理CPU,CPU通过总线通信;
(2)多核CPU,不同的Core通过L2 cache通信,存储和外设依然通过总线通信;
(3)多核超线程,每个Core还分为两个逻辑处理单元,共同分享一个Core的资源。
物理CPU:插槽上的CPU个数
cat /proc/cpuinfo | grep "physical id" |sort | uniq |wc -l
CPU核数:每块CPU能处理数据的Core数
一般来说,物理CPU个数×每块CPU能处理数据的Core数就等于逻辑CPU个数(即第2种CPU架构);否则,则表示CPU支持了Intel超线程技术。
cat /proc/cpuinfo | grep "cores" | uniq
逻辑CPU
一块CPU可以有多个Core,如果利用Intel的超线程技术(HT),还可以在逻辑上多一倍的CPU Core数出来。即:
逻辑CPU数量=物理CPU个数×单个CPU Core数×2
cat /proc/cpuinfo | grep "processor" | wc -l
注意:
1. Linux下top指令查看到的CPU信息是按照逻辑CPU呈现的;
2. 当使用指令:cat /proc/cpuinfo 时,
a. "physical id"是物理插座的唯一标识符,拥有相同的"physical id"的所有逻辑CPU共享物理插座;
b. "core id"是CPU内核的唯一标识符,拥有相同的"core id"的逻辑CPU都位于同一CPU内核上;
c. 如果有2个或2个以上逻辑CPU拥有相同的"core id"和"physical id",则说明系统支持超线程(HT)技术;
d. 如果有2个或2个以上逻辑CPU拥有相同的"physical id",但是"core id"不同,则说明这是一个多内核处理器。cpu cores 条目也可以表示是否支持多内核。
e. "siblings"列出了位于相同物理封装(具有相同的"physical id")中的逻辑CPU的数量。
参考链接:[1]
processor: 0
vendor_id: GenuineIntel
cpu family: 6
model: 85
model name: Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz
stepping: 7
microcode: 0x5000029
cpu MHz: 2300.000
cache size: 22528 KB
physical id: 0
siblings: 32
core id: 0
cpu cores: 16
apicid: 0
initial apicid: 0
fpu: yes
fpu_exception: yes
cpuid level: 22
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 syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep
_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave av
x f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 intel_ppin intel_pt ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpc
id rtm cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts pku ospke avx5
12_vnni md_clear spec_ctrl intel_stibp flush_l1d arch_capabilities
bogomips: 4600.00
clflush size: 64
cache_alignment: 64
address sizes: 46 bits physical, 48 bits virtual
power management:
查看CPU使用率
top指令即时显示CPU的使用情况。
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
d :改变显示的更新速度,或是在交谈式指令列( interactive command)按s
q :没有任何延迟的显示速度,如果使用者是有superuser的权限,则top将会以最高的优先序执行
c :切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S :累积模式,会将己完成或消失的子行程( dead child process )的CPU time累积起来
s :安全模式,将交谈式指令取消,避免潜在的危机
i :不显示任何闲置(idle)或无用(zombie)的行程
n :更新的次数,完成后将会退出top
b :批次档模式,搭配"n"参数一起使用,可以用来将top的结果输出到档案内
查看内存信息
使用cat /proc/meminfo查看内存信息,比free要丰富许多。
参考链接:[1]
cat /proc/meminfo
MemTotal: 263380892 kB //最后实际可被Kernel支配的总内存
MemFree: 241283664 kB //系统尚未使用内存
MemAvailable: 254693560 kB
Buffers: 1036 kB //给文件的缓存大小
Cached: 13534032 kB
SwapCached: 78444 kB
Active: 6806528 kB
Inactive: 9196500 kB
Active(anon): 2046396 kB
Inactive(anon): 678024 kB
Active(file): 4760132 kB
Inactive(file): 8518476 kB
Unevictable: 9532 kB
Mlocked: 9532 kB
SwapTotal: 4194300 kB
SwapFree: 47112 kB
Dirty: 2272 kB
Writeback: 0 kB
AnonPages: 2398416 kB
Mapped: 271992 kB
Shmem: 249860 kB
Slab: 1698236 kB
SReclaimable: 1015432 kB
SUnreclaim: 682804 kB
KernelStack: 30160 kB
PageTables: 89696 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 135884744 kB
Committed_AS: 17714800 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 1001928 kB
VmallocChunk: 34224431100 kB
HardwareCorrupted: 0 kB
AnonHugePages: 503808 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 204294144 kB
DirectMap2M: 61485056 kB
DirectMap1G: 4194304 kB