博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
arm linux 生成火焰图
阅读量:4061 次
发布时间:2019-05-25

本文共 1127 字,大约阅读时间需要 3 分钟。

aarch32  arm-linux-gnueabihf-gcc linux4.9

perf wiki:

perf 工具生成:

cd linux/tools/perf  ./build.sh

perf 采集栈信息的linux支持

CONFIG_PERF_EVENTS=yCONFIG_HW_PERF_EVENTS=yCONFIG_SCHED_INFO=yCONFIG_SCHEDSTATS=yONFIG_KALLSYMS=yCONFIG_KALLSYMS_ALL=yCONFIG_DEBUG_INFO=yCONFIG_FTRACE=y (enable debugfs tracing)

根据README

1.采集命令./perf record -F [sample freq] -p [pid] -g -- sleep [time]

ON-CPU:

perf record -F 99 -p 1140 -g -- sleep 60

OFF-CPU:

perf record -e sched:sched_stat_sleep -e sched:sched_switch -e sched:sched_process_exit -p [pid] -g -o perf.data.raw sleep 10perf inject -v -s -i perf.data.raw -o perf.data

2.生成火焰图:

下载生成火焰图的脚本 

perf script > out.perfstackcollapse-perf.pl out.perf > out.foldedflamegraph.pl out.folded > kernel.svg

3. 示例展示

ON-CPU

OFF-CPU

perf inject 出现error :failed to write feature BUILD_ID

./perf inject -b -v -s -i ./perf.data.raw -o ./perf.data

加-b参数(参见tools/perf/Documents/)后错误变成:Failed to open /proc/kcore. Note /proc/kcore requires CAP_SYS_RAWIO capability to access. Using /proc/kallsyms for symbols,这个错误可以忽略

发现有很多unknown symbol

echo 1 > /proc/sys/kernel/perf_event_paranoid

echo 0 > /proc/sys/kernel/kptr_restrict

转载地址:http://pxbji.baihongyu.com/

你可能感兴趣的文章
MODULE_DEVICE_TABLE的理解
查看>>
platform_device与platform_driver
查看>>
platform_driver平台驱动注册和注销过程(下)
查看>>
.net强制退出主窗口的方法——Application.Exit()方法和Environment.Exit(0)方法
查看>>
c# 如何调用win8自带的屏幕键盘(非osk.exe)
查看>>
build/envsetup.sh 简介
查看>>
C++后继有人——D语言
查看>>
Android framework中修改或者添加资源无变化或编译不通过问题详解
查看>>
linux怎么切换到root里面?
查看>>
linux串口操作及设置详解
查看>>
安装alien,DEB与RPM互换
查看>>
linux系统下怎么安装.deb文件?
查看>>
编译Android4.0源码时常见错误及解决办法
查看>>
Android 源码编译make的错误处理
查看>>
linux环境下C语言中sleep的问题
查看>>
ubuntu 12.04 安装 GMA3650驱动
查看>>
新版本的linux如何生成xorg.conf
查看>>
xorg.conf的编写
查看>>
启用SELinux时遇到的问题
查看>>
virbr0 虚拟网卡卸载方法
查看>>