Perf 是用来进行软件性能分析的工具,可以利用 PMU,tracepoint 和内核中的特殊计数器来进行性能统计,用来分析内核和应用程序的性能
以下面的实例,说明perf的基本用法
//t1.c
void longa()
{
int i,j;
for(i = 0; i < 1000000; i++)
j=i; //am I silly or crazy? I feel boring and desperate.
}
void foo2()
{
int i;
for(i=0 ; i < 10; i++)
longa();
}
void foo1()
{
int i;
for(i = 0; i< 100; i++)
longa();
}
int main(void)
{
foo1();
foo2();
}
/*t2.c*/
int main(void)
{
while (1);
}
Performance Event:性能分析工具,基于“Performance counters”的内核子系统实现
perf stat:获取特定程序的事件计数
perf top:实时显示系统当前事件计数
perf record:作用于perf stat类似,区别是结果输出到文件
perf report:解析perf record生成的文件
perf list:显示所有支持的事件类型
perf probe:动态增加tracepoint
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。