我们目前使用节点集群,以便最大限度地利用我们的机器,并希望能够同时分析所有进程(只有函数调用,我们使用--perf_basic_prof_only_functions)。虽然获取信息和构建火焰图工作得很好,但我们似乎得到了许多关于[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)有没有其他人遇到过这个问题?谢谢!
发布于 2017-02-05 21:54:09
您是否尝试过使用--perf_basic_prof (而不是--perf_basic_prof_only_functions)?至少对我来说,这解决了一些丢失的,没有翻译的条目。
在我的例子中,条目如下: Builtin:JSEntryTrampoline Stub:JSEntryStub
https://stackoverflow.com/questions/40596820
复制相似问题