linux - Perf 跟踪调用函数

标签 linux perf

我正在学习如何使用 perf.我使用了性能统计数据,然后使用了性能报告。所以我注意到 memcpy 中的缓存未命中。是否可以进行某种回溯来找出这是哪个 memcpy?仅仅知道它来自 memcpy 是毫无用处的。

最佳答案

-g标志传递给perf record将使其收集每个事件的调用堆栈。查看使用 -g 标志收集的跟踪的性能报告将帮助您了解有问题的memcpy是从哪里调用的。您可能还想使用 perf report 命令的 --children 标志。

关于linux - Perf 跟踪调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41697125/

相关文章:

linux - 在c++ linux中的socket编程中创建许多通信实例

c++ - Linux 性能监控,有什么方法可以监控每个线程?

trace - 是否可以使用 eBPF 或 perf 来计算在单个跟踪函数中花费的时间?

c - 为什么 ls 的这些指令数相差如此之大? (ptrace 对比 perf 对比 qemu)

linux - 用perf记录缺页的指令地址

c++ - 在 Linux 运行时重定向 FIFO

java - 针对特定于操作系统的 JRE 进行编码

linux - 运行一个应用程序并通过 ssh 切换到它?

c++ - 为什么 perf 具有如此高的上下文切换?

c - recvmsg() 返回 "Resource temporarily unavailable"