valgrind 使用 kcachegrind 查看函数运行时间

linux下的profile工具GNU gprof和Valgrind 最近尝试了两个profile工具,gprof和valgrind,总体来说还是更喜欢Valgrind,不用重新编译程序就能看到结果,配合可视化程序也可以让统计显示的非常清晰。 1. gprof 2. Valgrind 阅读详情
安装

首先安装运行分析函数时间的工具 kcachegrind
下载安装包 http://kcachegrind.sourceforge.net/,下载最新的 tar.gz 文件
解压文件,进入解压之后的目录,从 README 中可以找到安装方式,这里记录一下

cmake .
make -j8
sudo make install

中间过程中遇到的一些,cmake的时候出问题,找不到一个依赖包

CMake Error at /usr/local/share/cmake-3.12/Modules/FindKDE4.cmake:100 (message):
  ERROR: cmake/modules/FindKDE4Internal.cmake not found in
  /home/zhangying/.kde/share/apps;/usr/share/kde4/apps
Call Stack (most recent call first):
  CMakeLists.txt:5 (find_package)

安装依赖包

sudo apt-get install kdelibs5-dev 

在 make install 的时候,如果没有加 sudo 也会报错

zhangying@neil:~/file/chrome_download/kcachegrind/kcachegrind-0.7.4$ make install
[  1%] Built target doc-handbook
[ 19%] Built target core
[ 21%] Built target cgview
[ 70%] Built target views
[ 70%] Built target kcachegrind_automoc
[ 78%] Built target kcachegrind
[100%] Built target qcachegrind
Install the project...
-- Install configuration: "RelWithDebInfo"
CMake Error at doc/cmake_install.cmake:49 (file):
  file cannot create directory: /usr/local/share/doc/HTML/en/kcachegrind.
  Maybe need administrative privileges.
Call Stack (most recent call first):
  cmake_install.cmake:42 (include)


Makefile:85: recipe for target 'install' failed
make: *** [install] Error 1

这个时候加上 sudo 就可以了,此时分析工具安装完成了,该分析工具是为了在 valgrind 跑完之后,会生成一个结果文件,该工具可以分析这个结果

使用 valgrind 跑程序
valgrind --tool=callgrind --separate-threads=yes ./run

其中 run 是你要运行的程序
执行完之后会生成一个类似于 callgrind.out.963-01 文件
使用刚刚安装的 kcachegrind 分析该工具即可

【Tools系列】利用性能分析工具valgrind+KCachegrind分析 DATE: 2020.7.24 文章目录1、简述2、KCachegrind下载3、分析过程3.1、安装valgrind和KCachegrind3.2、调试文件3.3、利用valgrind生成性能日志3.4、利用kcachegrind可视化 1、简述 本文讲述如何应用callgrind和kcachegrind进行性能分析。该工具可以方便分析出可执行文件函数的执行时间及函数调用关系。 主要参考:性能分析工具使用-callgrind+kcachegrind 2、KCachegrind下载 KCachegrind 阅读详情

相关推荐

11、Callgrind与KCachegrind:性能分析与可视化工具

本文介绍了Callgrind和KCachegrind两款强大的性能分析与可视化工具,详细说明了它们在程序性能优化中的应用场景和操作方法。同时,还提到了Acumem VPE在提升缓存利用率方面的优势,为开发者提供了工具选择和优化建议。

kk1234的博客 147

爱上python系列------python性能(三):KCacheGrind性能分析可视化

KCacheGrind是 一个性能可视化的工具,需要读取固定格式的文件就可以获取可视化的图形,不是属于python独有的 前面我们使用cProfile进行了性能分析,接下来我们使用cProfile分析后 ,然后保留成文件,该文件并不能直接被KCacheGrind 读取,需要使用工具pyprof2calltree进行转换,得到的文件是KCacheGrind可以使用的,然后就能得到可视化结果。 因此,接下来需要准备两个工具: (1)KCacheGrind 这个直接可以下载:https://sourcefor

大鱼的博客 2928

kcachegrind程序性能分析工具

程序性能分析工具,可以结合valgrind等工具分析程序性能以及内存泄露等

Linux性能优化--性能工具:特定进程内存

linux

x13262608581的博客 1954

pyprof2calltree:剖析python程序并使用kcachegrind查看它们

概述 该脚本可使用 ()图形化的调用树分析器来帮助可视化使用cProfile Python模块收集的性能分析数据。 这是David Allouche等人的古老脚本的重命名。 它旨在分发(例如通过PyPI)并使其表现得更像debian 软件包的脚本。 最终目标是使其成为官方上游软件包的一部分。 安装 在Debian≥11或衍生版本(例如Ubuntu≥20.04)上,sudo apt安装kcachegrind pyprof2calltree。 命令行用法 安装后,您应该在路径中包含pyprof2calltree脚本: $ pyprof2calltree --help usage: pyprof2calltree [-h] [-o output_file_path] [-i input_file_path] [-k] [-r scriptfile

为R720安装iDRAC Service Module

这玩意找了好久资料, 教程都不咋靠谱, 要不就是有不理解的地方 所以直接一路莽着过河: 去官网找到设备对应的驱动程序: 几个查找筛选项看图 官网链接: https://www.dell.com/support/home/zh-cn/product-support/product/poweredge-r720/drivers 在下方的列表中找到对应系统版本的驱动并下载: 由于安装的系统为ESXi 6.5 U2 Dell定制版, 这里没有刚好的驱动, 所以下了个兼容的: 下载好后是一个压缩包:

Janus 6361

valgrind和Kcachegrind性能分析工具详解

一、valgrind介绍 valgrind是运行在Linux上的一套基于仿真技术的程序调试和分析工具,用于构建动态分析工具的装备性框架。它包括一个工具集,每个工具执行某种类型的调试、分析或类似的任务,以帮助完善你的程序。Valgrind的架构是模块化的,所以可以容易的创建新的工具而又不会扰乱现有的结构。 valgrind主要包含以下工具: 1、memcheck:检查程序中的内存问题,如泄漏、越界、非法指针等。 2、callgrind:检测程序代码的运行时间和调用过程,以及分析程序性能。 3、cacheg

Hello World 1672

手把手教你用闲置安卓手机+蓝鲸支付,零成本搞定个人项目自动收款(附私有化部署教程)

本文详细介绍了如何利用闲置安卓手机和蓝鲸支付系统,零成本搭建个人项目自动收款解决方案。通过私有化部署教程,读者可以学习到从手机选择、系统配置到支付渠道对接的全流程,实现安全、高效的收款系统,特别适合个人开发者和小型项目使用。

weixin_29597551的博客 334

valgrind和kcachegrind使用运行分析

一、valgrind介绍 valgrind是运行在Linux上的一套基于仿真技术的程序调试和分析工具,用于构建动态分析工具的装备性框架。它包括一个工具集,每个工具执行某种类型的调试、分析或类似的任务,以帮助完善你的程序。Valgrind的架构是模块化的,所以可以容易的创建新的工具而又不会扰乱现有的结构。 valgrind主要包含以下工具: 1 2 3 4 5 6 7 8 9 10Copy 1、memcheck:检查程序中的内存问题,如泄漏、越界、非法指针等。 2、c

HideInTime的博客 1334

告别重启烦恼:用WSL2让Docker和VMware在Win10上真正共存

本文详细介绍了如何在Windows 10系统上,借助WSL2实现Docker与VMware的真正共存,彻底告别以往需要反复重启切换的烦恼。通过启用Hyper-V兼容模式并进行正确配置,开发者无需重启即可同时高效运行容器和虚拟机,显著提升开发与测试工作流的连续性和效率。

salt9的博客 987

opencv 常用函数总结

本文是一份OpenCV图像处理的常用函数总结,详细介绍了图像的读入、显示、保存、像素处理、图像属性获取、基础操作、阈值处理、图像平滑、形态学转换以及直方图处理等关键技术。文章通过代码示例和参数说明,帮助读者快速掌握OpenCV在图像处理领域的应用。

weixin_44063529的博客 1600

使用valgrind分析C程序调用线路图

Valgrind可以检测内存泄漏和内存违例,但是用Valgrind生成的日志信息结合kcachegrind就可以查看C程序的执行线路图,调用时间,是做性能优化和查看代码的非常好的工具。 下载安装 Valgrind 安装 到www.valgrind.org下载最新版valgrind # wget http://www.valgrind.org/downloads/valgri

编程的本质是数学问题 6130

YF-S401水流量传感器在STM32上的精准计量实现

本文详细介绍了YF-S401水流量传感器与STM32微控制器的集成应用,实现精准水流计量。通过外部中断和外部时钟两种脉冲计数方案,结合硬件配置、软件滤波和校准技巧,确保高精度流量测量。适用于智能家居和工业自动化中的水控系统,提升系统稳定性和测量准确性。

rainy的博客 897

valgrind callgrind使用

callgrind使用

qixiang2013的专栏 985

分享一个完整的KANO问卷(包含正反问题和选项设置)

本文介绍了KANO模型问卷的设计与应用,用于评估功能需求优先级。问卷包含基本信息、功能评估(正反问题设计)、界面评估及开放问题,选项定义明确(如"非常喜欢"到"很不喜欢")。数据清洗规则包括剔除矛盾回答和注意力检验。通过量化编码和矩阵分析,将需求分为魅力型、期望型、必备型等类别。示例数据显示健康监测为必备型(72%),电子围栏为期望型(45%),适老化改造为无差异型(38%)。该模型为产品决策提供客观量化依据。

从技术实践立足,从项目管理方法论延伸思考 1796

OpenHarmony 显示Display驱动全栈解析:DisplayLayer + Gralloc + Gfx 三位一体,打造高性能图形底座

OpenHarmony Display显示驱动模块是系统图形渲染和显示功能的基础组件,负责管理显示设备、图层渲染、内存分配等核心功能。该模块采用HDI(Hardware Driver Interface)设计架构,为上层图形服务提供统一的显示能力接口,实现了显示设备的初始化、图层管理、内存分配与映射、硬件加速等关键功能。DisplayLayer:负责显示图层的管理, 包括图层创建、显示属性设置、图层填充及刷新等操作;

m0_67505153的博客 315

valgrind安装+使用【附带callgrind + dot】

1.valgind 安装 1.1源码安装 获取源码:(也可点击链接下载) wget http://www.valgrind.org/downloads/valgrind-3.16.0.tar.bz2 解压 tar -jxvf valgrind-3.16.0.tar.bz2 安装 cd valgrind-3.16.0 ./configure (./configure --prefix=/home/user1/valgrind 这种方式可以指定安装目录,但是可能需要配置环境才能使用) make make

sinat_21699465的博客 1553

uniapp - 实现手机端H5网页直播功能效果,拿到后端推流地址或播放资源后进行前端的流畅播放和画面展示功能,uniapp实时推流/拉流直播系统详细教程(提供完整示例代码,一键复制开箱即用!)

uniapp,h5网页,手机端H5网页,uniapp h5直播功能页面,uniapp直播实时推送显示,uniapp h5直播怎么做,怎么使用uniapp去实现移动端手机H5直播,h5 vue+uniapp怎么做直播,uniapp中使用videojs构建H5直播播放器,uniappH5端怎么实现直播推流,uniapp如何实现直播,直播聊天功能,h5平台端直播用什么插件,uniapp手机网页直播用什么组件插件播放器,uniapp手机H5直播播放器详细教程,直播项目,怎么使用vue+uniapp怎么做H5实时直播

✅ 精选推荐文章 8792

使用Valgrind的callgrind做c/c++代码的code profiling/性能调优

提起Valgrind,很多人认为是做内存泄漏的工具,其实memcheck只是Valgrind下的一个功能而已。 接下来我们一起看一下使用Valgrind的Callgrind工具实现Code Profiling/代码性能调优。(主要是针对CPU优化的) Code Profiling Code Profiling工具是指一个分析使用资源并生成报告的工具,这里的资源指内存,CPU,网络带宽等。 在做调优的第一步是使用工具将程序运行的真实定量数据收集起来,这种数据,就成为profiling data。通过profi

安安爸Chris的专栏 2624

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

valgrind——Callgrind检测程序代码的运行时间和调用过程,程序分析性能。

功能扩展1 callgrind 1.1 指令范式 valgrind --tool=callgrind --separate-threads=yes ./run 1.2 分析工具Kcachegrind Callgrind通过Valgrind框架使用运行时检测来进行缓存模拟和调用图生成。通过这种方式,甚至共享库和动态打开的插件也可以被分析。Callgrind生成的数据文件可以加载到KCachegrind中,用于浏览性能结果。但是包中还有一个命令行工具,可以从数据文件中获取ASCII报告,而不需要使用KCach

格物致知 2357

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

031-valgrind

从原理到代码实现、参数优化及结果分析的Valgrind技术调研报告,结合C++示例和可视化工具使用说明

zhengtianzuo的博客 935

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

让程序飞 之 性能工具:valgrind –tool=callgrind & kcachegrind

让程序飞 之 性能工具:valgrind –tool=callgrind & kcachegrind http://blog.dccmx.com/2011/01/callgrind/让程序飞 之 性能工具:valgrind –tool=callgrind ...

211

valgrind

-tool= 最常用的选项。--log-file= 将输出的信息写入到filename.PID的文件里,PID是运行程序的进行ID。--log-file-qualifier= 取得环境变量的值来做为输出信息的文件名。--db-command= 启动调试器的命令行选项[gdb -nw %f %p]--log-fd= 输出LOG到描述符文件 [2=stderr]--log-file-exactly= 输出LOG信息到 file。

ddddfang的专栏 677

valgrind+kcachegrind分析程序性能瓶颈

一:Valgrind的安装 1. 解压valgrind-3.7.0.tar.bz2。tar jxf valgrind-3.7.0.tar.bz2 2. 进入解压的目录,运行如下命令 a) ./configure b) Make c) Make install 二:Valgrind介绍 valgrind安装完毕后,会附带如下几个强大的工具: 1.Memcheck 检

CoderLife9192的专栏 7399

linux使用 valgrind工具内存调试

linux使用 valgrind工具内存调试

a2591748032的博客 2096

动态执行流程分析和性能瓶颈分析的利器——valgrind的callgrind

在《内存、性能问题分析的利器——valgraind》一文中我们简单介绍了下valgrind工具集,本文将使用callgrind工具进行动态执行流程分析和性能瓶颈分析。(转载请指明出于breaksoftware的csdn博客) 之前的《利器》系列中,我们介绍了两种静态分析函数调用关系的工具(《静态分析C语言生成函数调用关系的利器——calltree》和《静态分析C语...

方亮的专栏 4996
上一篇: tar 打包问题
下一篇: gdb 调试
NeilZhy
博客等级 码龄11年 175粉丝 145原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值