首页 > 解决方案 > 你能用 perf 分析一个函数的单个调用吗?

问题描述

我有一个要分析的 C++ 函数,并且只有该函数。一种可能的方法是使用 chrono 并仅测量运行该功能所需的时间并将其打印出来,运行程序几次,然后对样本进行统计。

我想知道我是否可以跳过显式编码时间测量,而只要求 perf 专注于指定函数所花费的时间。

标签: c++linuxprofilingperf

解决方案


查看 Google 的基准测试,对感兴趣的功能进行微基准测试。

然后,您可以像往常一样使用 perf 分析生成的可执行文件。

例如,假设按照基本用法,您生成了一个名为 mybenchmark 的可执行文件。然后,您可以像往常一样在二进制文件上运行 perf

$ perf stat ./mybenchmark

推荐阅读