Xcode Instruments:分析的热点与源代码不匹配
Posted
技术标签:
【中文标题】Xcode Instruments:分析的热点与源代码不匹配【英文标题】:Xcode Instruments: profiled hotspots don't match up with source code 【发布时间】:2012-05-28 12:37:58 【问题描述】:使用 Instruments 时间分析器时,我经常得到没有意义的结果。它们表明时间花费在文件的某些部分上,这些部分要么在被检查的函数之外,要么不包含可执行代码(cmets、空行等)。这使得结果往往接近于无用。
我尝试了很多方法来解决这个问题:
在重新编译和重新分析之前关闭仪器 清理构建,重新编译 每次配置文件时都重新启动仪器 更新到 Xcode 4.3.2这些有时会有所帮助,但并不总是能防止问题发生。
我能做些什么来解决这个问题?
【问题讨论】:
【参考方案1】:我在使用 gcc 编译并设置了 -O3 优化标志的代码上遇到了同样的问题。谷歌搜索,我了解到 Apple 的时间分析器不喜欢使用优化标志编译的 gcc 代码。
在没有 -O3 标志的情况下重新编译我的代码并重新运行时间分析器,热点现在与我的源代码的正确行匹配。也许这与您的问题有关。
【讨论】:
虽然这是事实,但在没有优化的情况下搜索热点并没有任何帮助。以上是关于Xcode Instruments:分析的热点与源代码不匹配的主要内容,如果未能解决你的问题,请参考以下文章
带有 Instruments 6.1 的 Xcode 6.1 无法正常工作
IOS性能调优系列:使用Instruments动态分析内存泄漏
IOS性能调优系列:使用Instruments动态分析内存泄漏