一:性能分析
曾经在测试C++代码性能的时候发现代码执行效率比较低,完全没法满足需求,束手无策,后面经过TX的帮助进行定位,解决,颇有收获,遂记录之:
1.首先需要安装好callgrind工具,我安装的是valgrind-3.11.0版本(安装问百度吧)。
2.使用valgrind工具来执行代码,会生成一个callgrind.out.xxx的文件,其中xxx表示进程号
命令:valgrind --tool=callgrind ./a.out (单线程)
valgrind --tool=callgrind --separate-threads=yes ./a.out (多线程)
3.然后使用kcachegrind-callgrind工具在windows下就可以看看哪些地方比较耗cpu,然后进行修订。
4.查看效果图
我遇到问题在图中就可以看出,使用C++中list容器进行删除操作相当耗cpu。于是改为set,
性能瞬间提高。
二:内存泄漏检测
命令:valgrind --tool=memcheck --leak-check=yes a.out
阅读(657) | 评论(0) | 转发(0) |