Linux系统CPU性能分析工具总结

发布时间:2023年12月31日

在这里插入图片描述

CPU使用率

CPU使用率定义
CPU 使用率是单位时间内 CPU 使用情况的统计,以百分比的方式展示。CPU 使用率是最常用来描述系统CPU 性能的指标。

Linux 作为一个多任务操作系统,将每个 CPU 的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运行的错觉。

性能分析工具

下面介绍几种可用于分析CPU使用率的工具

top

top是最常用的查看系统资源使用情况的工具,包括CPU、内存等等资源。

打开top,可以指定更新的周期。
输入H,打开隐藏的线程;输入1,可以显示单核CPU使用情况。
top -H -b -d 1 -n 200 > top.txt,每个1秒统计一次,共200次,显示线程细节,并保存到top.txt中。
top采样来源你还依赖于/proc/stat和/proc//stat两个,这两个的详细介绍参考:/proc/stat和/proc//stat。

以启动一个gazebo仿真环境为例

cpu的使用率情况如下:
在这里插入图片描述
可以看到 gazebo 的 gzserver 是非常占用cpu资源的,使用率高达86%

cpustat

通过下面指令进行安装

sudo apt install cpustat
cpustat -T -D -x

结果如下
在这里插入图片描述
gazebo 的 gzserver 占用cpu资源的使用率达82%。

htop

htop和top的功能类似,但是可读性比top更好。在界面按下F5,可以看到进程里面的线程,树形结构表示了父子关系。

在这里插入图片描述
同样gazebo 的 gzserver 占用cpu资源的使用率达85.8%。

atop

atop是一个监控系统资源和进程的工具。它通过CPU使用率来对列表中的进程进行降序排列,而每一个进程则包含了CPU、内存、磁盘和网络状态等信息。它的功能与top和htop类似。
在这里插入图片描述同样gazebo 的 gzserver 占用cpu资源的使用率达87%。

glances

glances是一个由python编写的,与Nmon功能类似的报告工具,它能够报告统计cpu、内存、网络、磁盘和进程。除了报告统计,glances不支持任何其他特性或功能。当程序运行时点击“h”可以显示帮助页面。
在这里插入图片描述
同样gazebo 的 gzserver 占用cpu资源的使用率达84.9%。

nmon

Nmon是一个非常容易使用,能够在一个屏幕上监视CPU、内存、网络、磁盘使用状况和进程列表的工具。除了无法管理进程和修改报告显示,Nmon与那些只用于报告的报告工具完全一样。另外,它可以将数据保存到电子表格文件。

在这里插入图片描述

pcp-gui

Performance Co-Pilot,简称PCP,是一个系统性能和分析框架。它从多个主机整理数据并实时的分析,帮你识别不正常的表现模式。它也提供API让你设计自己的监控和报告解决方案。

安装pcp相关工具。

sudo apt install pcp pcp-gui

在这里插入图片描述

文章来源:https://blog.csdn.net/qq_32761549/article/details/135263091
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。