我们目前使用节点群集来充分利用我们的机器,并且希望能够同时分析所有进程(只有函数调用,我们正在使用--perf_basic_prof_only_functions
)。虽然获取信息和构建flamegraph工作正常,但我们似乎得到了[perf-$PID.map]
的大量条目,使得它似乎缺少一些调用来告诉其中一个工具来考虑多个perf文件。
具体来说,我们正在做类似以下的事情:
sudo perf record -F 99 -o perf.data -p $PIDS -g -- sleep 30
sudo perf script -i perf.data > out.nodestacks
# Using http://github.com/brendangregg/FlameGraph
./stackcollapse-perf.pl < ../out.nodestacks | ./flamegraph.pl > ../flame.svg
但是查看perf script
的输出,有很多类似于:
3881ddc630da [unknown] (/tmp/perf-20350.map)
3881dc5aae44 [unknown] (/tmp/perf-20350.map)
3881dc7d7275 [unknown] (/tmp/perf-20350.map)
3881dc7d6f4b [unknown] (/tmp/perf-20350.map)
3881dc7d6953 [unknown] (/tmp/perf-20350.map)
还有其他人遇到过这个问题吗?谢谢!
答案 0 :(得分:0)
您是否尝试使用 - perf_basic_prof (而非--perf_basic_prof_only_functions)? 至少那个为我解决了一些遗漏,而不是翻译的条目。
就我而言,这是以下条目: 内建:JSEntryTrampoline 存根:JSEntryStub