Tag: perf

nodejs / v8 flamegraph中使用perf_events的未知事件

我试着用Brendan Gregg 在这里描述的使用Linux perf_event进行nodejs分析。 工作stream程如下: 使用–perf-basic-prof运行节点> 0.11.13,它会创build/tmp/perf-(PID).map JavaScript符号映射的/tmp/perf-(PID).map文件。 使用perf record -F 99 -p `pgrep -n node` -g — sleep 30捕获堆栈perf record -F 99 -p `pgrep -n node` -g — sleep 30 使用此库中的stackcollapse-perf.pl脚本折叠堆栈 使用flamegraph.pl脚本生成svg火焰图 我得到以下结果(开头看起来非常好): 问题是有很多[unknown]元素,我想应该是我的nodejs函数调用。 我假设整个过程在第3点失败,其中perf数据应该使用由–perf-basic-prof执行的node / v8生成的映射来折叠。 创build/tmp/perf-PID.map文件,并在节点执行过程中向其写入一些映射。 如何解决这个问题? 我正在使用CentOS 6.5 x64,并且已经尝试使用节点0.11.13,0.11.14(包括预构build和编译),但都没有成功。