背景
性能测试时,通常使用top命令进行cpu、内存使用情况top初体验
进入linux系统,top命令参数详解
第一行:系统运行信息,系统运行当前时间16:51分钟,系统运行34天,当前有2个用户登录,系统平均负荷压力情况为0.46(1min平均负荷压力)、0.9.0 )、5min平均负荷压力
注: load average :每5s检查活动进程数,并使用特定算法计算得出。 通常,该数值除以CPU核心数后的值大于3~5表示系统的负载压力较高。
第二行:显示任务信息。 共有256个进程,一个进程正在运行,255个进程正在休眠,0个进程正在停止,0个进程正在假死
第三行显示了CPU运行信息。 3.5us表示用户模式下的CPU占有率为3.5%,1.0sy表示系统模式下的CPU占有率为1.0%,0.0ni表示变更了优先级的进程的CPU占有率为0.0%,93.3id表示空闲状态的CPU占有率为93.3%,2.1wa表示I/O等待
第4行:内存信息,16343540 total表示物理内存总量,16144616 used表示已使用的物理内存,198924 free表示可用物理内存,171348 buffers表示缓存内存的大小,所有这些单位均为千字节
(第5行)显示虚拟内存使用信息。 29355004 total表示虚拟内存空间的总大小,504536 used表示虚拟内存使用大小,28850468 free表示可用虚拟内存,11936408 cached Mem表示缓存虚拟内存。 这些单位都是国安
第6行:参数的含义如下
PID :编号
用户:进程的所有者用户
宣传:流程运行的优先级。 值越小,优先级越高,CPU的执行权越早获得
NI )进程的nice值。 表示进程可以执行的优先级修改值
VIRT :进程使用虚拟内存,单位kb
RES :常驻内存,单位kb
SHR :进程使用的共享内存,单位kb
S:进程的执行状态。 (s )休眠; d :不要中断睡眠r :开车中; t :跟踪/停止; z :假死中)
%CPU :运行时的CPU占有率
%MEM :进程使用的内存使用率
时间:进程占用的CPU总时间
COMMAND :进程名称
多核CPU监控
进入linux系统,输入top,按1,即可如图所示监视各逻辑cpu的状况。
注:理论上逻辑cpu的us之和sy之和%CPU实际上存在偏差。 作者是查看CPU方法
核心总数=物理CPU数每个物理CPU的核心数
逻辑CPU总数=物理CPU数量x每个物理CPU的核心数量x超线程数量
显示物理CPU数
cat/proc/CPU info grep“物理id”sort uniq-l
确认每个物理CPU的核心数,即核心数
cat/proc/CPU info|grep“CPU核心”
显示逻辑CPU的数量
cat/proc/CPU info|grep“处理器”|WC-l
top命令其他参数用法
top -p :显示指定进程id的top信息。 示例:
顶级p 12793
顶层- h-p :显示指定进程id的所有线程的顶层信息。 示例:
顶级h-p 27376