繁体   English   中英

O1或O3上的Callgrind用于性能分析?

[英]Callgrind on O1 or O3 for performance profiling?

我需要分析我的C ++代码,而valgrind --tool=callgrind是一个valgrind --tool=callgrind的工具。 但是,我想知道是否应该使用-g -pg -O1-g -pg -O3 (GCC 4.4.7)对代码进行性能分析? 后者更准确地描述了我的程序的性能,但是我担心-O3会混淆分析器并混淆哪些源函数是实际的瓶颈。 也许我只是害怕老太太的故事,但我认为在进行可能要花费数小时的测试之前,我应该先确认一下。

另一个stackoverflow中的该线程可能使您头脑清醒: 进行性能分析时的优化标志

问题不是通过优化进行性能分析,而是通过优化(-g -pg)进行调试。

正如quantdev所说,您应该“始终使用与用于创建生产二进制文件的选项相同的选项”,并且您将继续使用调试信息创建一个生产二进制文件。

如果线程不足,请告诉我们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM