性能分析工具-CPU

1.CPU统计信息

1.1 上下文切换

如果要制造出给定单处理器同时运行多个任务的假象,Linux内核就要不断地在不同的进程间切换。这种不同进程间的切换称为上下文切换。
上下文切换包括:进程正在执行的指令,分配给进程的内存,进程打开的文件等。因此上下文切换的开销是非常大的,需要尽量避免上下文的切换。
上下文切换是内核调度的结果,内核周期性的中断正在运行的进程,周期性或定时发生时,你的系统都可能进行上下文切换。

1.2 中断

处理器还周期性地从硬件设备接收中断。当设备有事件需要内核处理时,它通常就会触发这些中断

1.3 CPU使用率

cpu可以有七件事情,任何时间都是执行七件事情中的一个:
(1)CPU可以是空闲的,这意味着处理器实际上没有做任何工作,并且等待有任务可以执行。
(2)CPU可以运行用户代码,即指定的“用户”时间。(3)CPU可以执行Linux内核中的应用程序代码,这就是“系统”时间。
(4)CPU可以执行“比较友好”的或者优先级被设置为低于一般进程的用户代码。
(5)CPU可以处于iowait状态,即系统正在等待I/O(如磁盘或网络)完成。
(6)CPU可以处于irq状态,即它正在用高优先级代码处理硬件中断。
(7)CPU可以处于softirq模式,即系统正在执行同样由中断触发的内核代码,只不过其运行于较低优先级(下半部代码)。

2.Linux CPU性能工具

2.1 vmstat

vmstat是一个很有用的命令,它能获取整个系统性能的粗略信息
❑正在运行的进程个数。
❑CPU的使用情况。
❑CPU接收的中断个数。
❑调度器执行的上下文切换次数
调用命令行:
vmstat [-n] [-s] [delay count]
CPU相关的vmstat输出

2.2 top指令

top指令默认是将CPU最多的进程按照降序排列的列表。默认会3s更新这个列表
top实际上有两种模式的选项:命令行选项和运行时选项。命令行选项决定top如何显示其信息
在这里插入图片描述
在这里插入图片描述

2.3 mpstat 多处理器统计

展示的是CPU随时间变化的行为
mpstat [-P {cpu|ALL}] [delay|count]
delay 指定了采集间隔,count指定了采集次数

示例:查看处理器编号为0的CPU的统计信息
mpstat -P 0 1 10 //查看编号为0的处理器,1s一次,连续执行10次
在这里插入图片描述

2.4 sar指令

sar能有效地将收集到的系统性能数据记录到二进制文件,之后,可以重播这些文件。sar是一种低开销的、记录系统执行情况信息的方法。
sar [options] [delay | count]

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值