Xcode 我可以测量现代Intel Mac OS X上的分支预测故障吗?
我想测量一下Mac OS X上英特尔处理器在Xcode上的分支预测失败,显然是为了速度优化 有没有办法对XCode的仪器进行编程以实现这一点 我已经检查过了,不幸的是,这个信息没有出现在Xcode文档中。 我怀疑这可以通过一些自定义设置来实现 目的是识别优化问题,例如: 我知道,对于在Linux和Windows上运行的英特尔处理器,存在一个新的解决方案。在OS X上,您显然只能监视运行在Linux或Windows系统上的远程Intel处理器Xcode 我可以测量现代Intel Mac OS X上的分支预测故障吗?,xcode,macos,optimization,profiling,branch-prediction,Xcode,Macos,Optimization,Profiling,Branch Prediction,我想测量一下Mac OS X上英特尔处理器在Xcode上的分支预测失败,显然是为了速度优化 有没有办法对XCode的仪器进行编程以实现这一点 我已经检查过了,不幸的是,这个信息没有出现在Xcode文档中。 我怀疑这可以通过一些自定义设置来实现 目的是识别优化问题,例如: 我知道,对于在Linux和Windows上运行的英特尔处理器,存在一个新的解决方案。在OS X上,您显然只能监视运行在Linux或Windows系统上的远程Intel处理器 与其说是一个商业工具,不如说是一种设置/编程Xcod
与其说是一个商业工具,不如说是一种设置/编程Xcode和Apple工具的方法,以便在这个问题上至少获得最低限度的可见性。Xcode的仪器中有硬件性能计数器(PMC): 默认情况下,
窗口>管理PM事件
中有隐藏的分支事件,根据
对于其他与此抗争的人,在仪器9.2中:
- 选择计数器
- 转到文件>录制选项
- 选择“采样依据:事件”
- 选择事件名称(请参阅),在本例中为“BR\u MISP\u RETIRED.CONDITIONAL”:
我不知道XCode,但Cachegrind可以做到。我发现存在与OSX兼容的Cachegrind版本,看起来很有希望。我将编译并试用它。另一方面,我注意到Xcode分析工具中的计数器工具(这是一个没有详细记录的工具)似乎允许“计数”看起来确实是分支预测失败的东西。