堆栈合并(Stack Merging)是一种技术,用于将多个调用堆栈中的信息汇总到一起,以便于分析和优化。
火焰图则是一种图形化工具,通过可视化的方式展示函数调用的层次和时间分布,帮助开发者快速定位性能瓶颈。
前置条件: 确保已经启用了性能分析工具Probing网页服务,并且已经生成了性能分析数据.
收集多个rank堆栈信息并进行合并.
定制化火焰图生成.
准备工作(提供堆栈)
❯ cd /home/yang/worksapce/demangle_l
❯ source /home/yang/worksapce/probing/venv/bin/activate
❯ PROBING=1 PROBING_PORT=9922 python main.py 修改urls.json
❯ cd /home/yang/worksapce/collect_draw_r
❯ cargo run
urls.json为模拟的请求;response.json为单进程收集数据;output.json为模拟4进程收集的数据;processed_stacks.txt为json转换成一维txt;merged_stacks.txt为合并后的堆栈信息;mmm.svg测试堆栈合并火焰图;flamegraph.svg为生成的火焰图;