返回信息流昨天承蒙 guo 老师的指点,本菜鸟发现原来分析代码运行时间不需要一行一行的加 GetTickCout()函数。
然后我找到了visual studio下的代码分析工具visual studio profiler。废话不多说,直接上传网址。
中文版:http://msdn.microsoft.com/zh-cn/magazine/cc337887.aspx
英文版:http://msdn.microsoft.com/en-us/magazine/cc337887.aspx
我试了push_back的耗时,的确非常长。
std::vector<class std::complex<double>,class std::allocator<class std::complex<double> > >::push_back(class std::complex<double> const &) 76.434 0.142 1612 3
解释:耗时占总耗时的76%,而调用仅仅占0.142% ...
希望能给有代码优化需要的同学以帮助。
这是一条镜像帖。来源:北邮人论坛 / cpp / #42644同步于 2010/8/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
visual studio下 类似于Linux 下的 Gnu gprof的工具
SunShow
2010/8/24镜像同步6 回复
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
guo老師...
請叫guo同學~~
【 在 SunShow 的大作中提到: 】
: 昨天承蒙 guo 老师的指点,本菜鸟发现原来分析代码运行时间不需要一行一行的加 GetTickCout()函数。
: 然后我找到了visual studio下的代码分析工具visual studio profiler。废话不多说,直接上传网址。
: 中文版:http://msdn.microsoft.com/zh-cn/magazine/cc337887.aspx
: ...................
呵呵
我是对Linux不太了解,等这个项目忙完了,也去用用linux。
【 在 guo 的大作中提到: 】
: guo老師...
: 請叫guo同學~~
: 【 在 SunShow 的大作中提到: 】
: ...................
优化什么?优化push_back函数么?
这个很难。
不过你可以不使用vector么,如果只是用来插入和删除的,不用来搜索,用 list 效率会高很多。
标题比较意识流
【 在 SunShow (SunShow) 的大作中提到: 】
: 昨天承蒙 guo 老师的指点,本菜鸟发现原来分析代码运行时间不需要一行一行的加 GetTickCout()函数。
: 然后我找到了visual studio下的代码分析工具visual studio profiler。废话不多说,直接上传网址。
: 中文版:http://msdn.microsoft.com/zh-cn/magazine/cc337887.aspx
: ...................
优化整个程序,没想到程序中push_back成为了速度提升的障碍。
最后的优化结果是,不适用vector,直接使用数组。
主要是在接口设计阶段没考虑到vector做频繁调用导致的耗时问题,现在回头补以前的工作,挺费劲儿的。
【 在 ericyosho 的大作中提到: 】
: 优化什么?优化push_back函数么?
: 这个很难。
: 不过你可以不使用vector么,如果只是用来插入和删除的,不用来搜索,用 list 效率会高很多。
: ...................
呵呵,我语文水平不高,见笑了。
【 在 FadeToBlack 的大作中提到: 】
: 标题比较意识流
: 【 在 SunShow (SunShow) 的大作中提到: 】
: : 昨天承蒙 guo 老师的指点,本菜鸟发现原来分析代码运行时间不需要一行一行的加 GetTickCout()函数。
: ...................