相关疑难解决方法(0)

如何分析在Linux上运行的C++代码?

我有一个在Linux上运行的C++应用程序,我正在优化它.如何确定代码的哪些区域运行缓慢?

c++ unix profiling

1732
推荐指数
12
解决办法
49万
查看次数

最后的性能优化策略

这个网站上已经存在很多性能问题,但是我发现几乎所有这些都是特定于问题且相当狭窄的问题.几乎所有人都重复这些建议,以避免过早优化.

我们假设:

  • 代码已经正常工作
  • 所选择的算法对于问题的情况已经是最佳的
  • 已经测量了代码,并且已经隔离了违规的例程
  • 所有优化尝试也将被测量,以确保它们不会使事情变得更糟

我在这里寻找的是在一个关键算法中挤出最后几个百分点的策略和技巧,除此之外别无他法.

理想情况下,尝试使答案语言不可知,并在适用的情况下指出建议策略的任何缺点.

我将使用我自己的初步建议添加回复,并期待Stack Overflow社区可以想到的任何其他内容.

language-agnostic optimization performance

600
推荐指数
28
解决办法
8万
查看次数

gprof 的替代品

还有哪些程序与 gprof 做同样的事情?

profiler profiling gprof

170
推荐指数
6
解决办法
7万
查看次数

你最喜欢的分析工具是什么(适用于C++)

到目前为止,我只使用过Rational Quantify.我听说过有关英特尔VTune的好消息,但从未尝试过!

编辑:我主要是在寻找可以检测代码的软件,因为我猜这是获得非常好结果的唯一方法.


也可以看看:

Windows上的本机C++有哪些优秀的分析器?

c++ performance profiling

81
推荐指数
9
解决办法
6万
查看次数

适用于Windows的体面探查器?

Windows是否有适当的采样(例如,非仪器)分析器?最好一个类似于鲨鱼在MacOS,虽然我愿意接受我我将不得不支付这样一个分析器上的窗口.

我试着在VS团队套件探查,并没有太深刻的印象,并想知道是否有任何其他好的.

[编辑:ERK,我忘了说,这是C/C++,而不是.NET - 抱歉任何混淆]

c++ windows performance profiling

24
推荐指数
4
解决办法
1万
查看次数

替代-pg与Clang?

我希望描述CPU(尽可能的样本),尽可能小的性能影响(因此类似于GCC -pg),使用Clang编译的二进制文件.是否有替代方法使用代码检测,或产生类似于gprof的输出?

c gcc profiling clang gprof

20
推荐指数
1
解决办法
1万
查看次数

C++代码分析器

任何人都可以为C++推荐一个好的代码分析器吗?

我遇到了Shiny - 有什么好处吗?http://sourceforge.net/projects/shinyprofiler/

c++ windows profiler visual-studio

17
推荐指数
4
解决办法
2万
查看次数

高效的缓存和BLOB - 分析缓存命中/未命中

为了使程序具有高效缓存,所使用的数据应该线性存储吗?

因此,我使用线性分配器将数据放入blob中,而不是动态分配.这是否应该提高性能?我该怎么做才能进一步提高缓存效率?

我知道这些问题不具体,但我不知道如何解释......

哪些程序可以帮助我分析缓存命中/未命中?

c++ caching blob

5
推荐指数
1
解决办法
4181
查看次数

令人困惑的gprof输出

根据我的说法,我运行gprof了一个C++程序,我得到了第一行输出:16.637stime()

%   cumulative   self              self     total           
time   seconds   seconds    calls   s/call   s/call  name    
31.07      0.32     0.32  5498021     0.00     0.00  [whatever]
Run Code Online (Sandbox Code Playgroud)

为什么31.07%它只花了.32几秒钟的时间列表?这是一次通话时间吗?(这不是自我/电话吗?)

这是我第一次使用gprof,所以请善待:)

编辑:通过向下滚动,似乎gprof认为我的程序需要1.03秒.为什么会这么错呢?

c++ optimization profiling gprof

4
推荐指数
2
解决办法
9882
查看次数