gpt4 book ai didi

c++ - 使用 perf record 分析 linux 应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 12:30:27 24 4
gpt4 key购买 nike

我一直在尝试按照 this article on perf record 在 Linux 中分析我的 C++ 应用程序.我的理解是我需要做的就是运行 perf record program [program_options],其中 program 是程序可执行文件,[program options] 是我想传递给程序的参数。但是,当我尝试像这样分析我的应用程序时:

性能记录 ./csvJsonTransducer -enable-AVX-deletion test.csv testout.json

perf 几乎立即返返回告。不过,在没有 perf 的情况下运行 ./csvJsonTransducer -enable-AVX-deletion test.csv testout.json 需要将近 30 秒,我希望 perf 监控我的程序其执行的全部,不会立即返回。为什么 perf 返回得这么快?我怎样才能让它考虑到我的程序的整个运行?

最佳答案

您的命令似乎没问题。尝试在 /proc/sys/kernel/perf_event_paranoid 更改偏执级别。将此参数设置为 -1(作为 root)应该可以解决权限问题:

echo "-1" > /proc/sys/kernel/perf_event_paranoid

您也可以尝试使用perf record 设置您想要监控的事件。默认事件是 cycles(如果支持)。检查 man perf-list

尝试命令:

perf record -e cycles ./csvJsonTransducer -enable-AVX-deletion test.csv testout.json

强制监控周期。

关于c++ - 使用 perf record 分析 linux 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43458694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com