当前位置: 首页 > news >正文

C++性能测试工具——sysprof的使用

一、sysprof

sysprof相对于前面的一些性能测试工具来说,要简单不少。特别是其图形界面的操作,非常容易上手,它还支持分析文件的保存和导入功能,这是一个非常不错的功能。做为一款系统性能测试工具,它支持多种硬件平台。不过正如其支持图形界面一样,其对屏幕的分辨率还是有一定的要求的。
sysprof功能非常强大,它可以对系统范围内的CPU、内和IO资源等进行监控和分析,从而发现应用整体上的瓶颈并提供相关的细节支持,其主要功能包括:
1、图形化界面
提供直观的图形界面(GUI),可以在界面上展示调用栈、耗时情况、CPU时间线等性能相关的数据
在这里插入图片描述

2、支持针对性能相关的多维度数据监控
包括按时间段筛选 CPU 使用情况、查看函数调用栈、保存分析结果等。
在这里插入图片描述

3、系统级采样分析
支持对整个系统的进程进行采样分析,无需重启或重新编译应用程序。
4、较好的兼容性
支持多种Linux环境以及相关的硬件平台

二、安装

sysprof的安装非常简单,可以使用下面的命令安装:

sudo apt install sysprof -y

三、使用说明

sysprof这种支持GUI图形界面的工具来说,应用要简单许多,先看其主界面:

在这里插入图片描述

其使用方法说明:
1、在终端中执行命令“sysprof”,启动图形界面
2、主界面中左上角的“Open”按钮可以打开导出的相关性能测试文档,右上角的快捷菜单中,有更详细的功能,如保存记录等
3、默认启动时,“启动应用程序”为灰,打开后可发出现命令行启动输入文本框和相关环境设置文本框,这和开发者IDE工具中设置相关参数雷同
4、全部进程意味着所有的当前可监控的进程相关分析都会被处理,如果想对具体的某个进程进行监控,请关闭它。在关闭后的输入框中输入进程名进行过滤并找到它
5、设置下方的性能分析器,点选即可(也可点选取消)
6、在终端或其它场景内启动相关测试程序并运行
7、在sysprof中启动“记录”,弹出一个新窗口,等待到需要测试的内容完毕,点击“停止记录”并弹出分析界面
8、依据运行采集的结果进行分析,包括多线程和GPU的分析等
9、根据情况是否对相关结果进行保存等工作

四、实际应用

现在测试一个自己开发的工程,按下面的步骤进行:
1、在终端中执行命令“sysprof”,启动图形界面并选择要使用的“性能分析器”(如调用图、CPU使用率等)
2、在终端或其它场景内启动相关测试程序
3、启动程序的相关运行
4、点击sysprof界面中的“记录”,会启动一个计时的界面
5、待测试完成,点击“停止记录”,即会打开一个界面,即可进行相关的分析
在这里插入图片描述

五、总结

windows窗口界面之所以流行不是没有原因的,不管是普通应用者还是开发者,甚至是资深开发者,对窗口界面的应用都是持一种欢迎的态度的。相对于命令行来说,窗口的说明简单容易上手,不用记忆大量的命令和参数。对大多数人来说(包括大多数开发者),软件只是一个工具,不需要深入的学习它的各种细节和底层逻辑,这才是软件应用的根本。

http://www.xdnf.cn/news/613567.html

相关文章:

  • 【AUTOSAR网络管理】T_NM_Timeout参数测试指南
  • 【学习笔记】机器学习(Machine Learning) | 第七章|神经网络(4)
  • 强化学习鱼书(8)——DQN
  • Qt window frame + windowTitle + windowIcon属性(3)
  • Android11以上通过adb复制文件到内置存储让文件管理器可见
  • 实验13 数据库权限管理
  • 告别繁琐操作,一键批量发布!
  • Linux下MySQL的安装与使用
  • 开局插第一个眼侦查对方打野的动态
  • 人脸识别技术合规备案最新政策详解
  • 利用条件编译实现RTT可控的调试输出
  • 20250523-BUG-E1696:无法打开元数据文件“platform.winmd(已解决)
  • 写起来比较复杂的深搜题目
  • 差分数组一文全解析
  • Vue.js教学第十三章:深入解析Vuex,前端状态管理核心指南
  • 分布式事务之Seata
  • 根据YOLO数据集标签计算检测框内目标面积占比(YOLO7-10都适用)
  • Linux常用命令简介
  • 驱动开发学习20250523
  • C# :HImage转Mat方法
  • python与flask框架
  • 在App Store Connect上编辑多个用户的访问权限
  • leetcode hot100:十四、解题思路大全:真·大全!
  • openCV1-3 图像查找表与色彩表
  • 软考 组合设计模式
  • docker基础
  • 第36节:PyTorch基本张量操作
  • springboot配置mysql druid连接池,以及连接池参数解释
  • Python训练营打卡 Day24
  • CloudCanal RAG x Ollama 构建全栈私有 AI 服务