使用 ftrace 在多核平台上针对特定 PID 进行功能分析

使用 ftrace 在多核平台上针对特定 PID 进行功能分析

我正在尝试使用 ftrace 进行基于 function_profile_enabled 的函数分析,如上所述这里。我想使用 set_ftrace_pid 仅捕获特定 PID 的函数调用,如同一链接中所述。但是,当我设置 PID 并执行 function_profile_enabled 时,它仍然捕获所有 CPU 上的函数调用。因此,考虑到上下文切换,从 /sys/kernel/debug/tracing/trace_stat/function* 中过滤掉不需要的 CPU 确实很困难。 function_graph 功能与 set_ftrace_pid 配合使用效果很好。 Brandan Gregg 也遇到了同样的问题这里,但我使用的是 4.4 内核,这是几代之后的版本。

相关内容