摘要: 在主机上启动一台虚拟机,在这台虚拟机里测试fio,运行了fio的脚本,运行一会儿机器无任何反应。
问题的分析: 使用top -p xxxx 发现虚拟机的进程CPU利用率是100%,进程一直运行在CPU1上,而且利用率一直是100%左右。所以这个适合火焰图的on-cpu的情况,可以进行分析on-cpu的情况
具体如下图:
2. 使用perf分析目前虚拟机运行在那个部分代码导致的问题。
使用perf+ flamegraph软件来呈现问题:
使用命令行:
790 ./tools/perf/perf record -F 99 -p 1789 -g -- sleep 300
792 ./tools/perf/perf script >out.perf
793 ../FlameGraph/stackcollapse-perf.pl out.perf >out.folded
794 ../FlameGraph/flamegraph.pl out.folded >out.svg
使用浏览器查看火焰图的情况: