在CentOS上进行C++代码性能分析,可借助以下工具及方法:
perf工具
sudo yum install perf。perf stat ./your_program。perf record -g ./your_program,生成perf.data文件。perf script | ./stackcollapse-perf.pl | ./flamegraph.pl > perf.svg,用浏览器查看。gprof工具
-pg选项:g++ -pg -o program program.cpp。gmon.out,再用gprof program gmon.out > analysis.txt生成报告。Valgrind工具
sudo yum install valgrind。valgrind --tool=memcheck ./your_program,检测内存泄漏。valgrind --tool=callgrind ./your_program,配合kcachegrind生成调用图。-O2或-O3选项提升性能。top、htop等工具观察实时资源占用。| 工具 | 优势 | 适用场景 |
|---|---|---|
| perf | 系统级性能分析,支持硬件计数器 | CPU、缓存、系统调用瓶颈 |
| gprof | 函数级调用分析,轻量级 | 用户态CPU密集型程序 |
| Valgrind | 内存泄漏检测精准,支持多线程 | 内存错误排查 |
参考资料:[1,2,3,4,5,6,7,8,9,10]