Xcode 我可以测量现代Intel Mac OS X上的分支预测故障吗?

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

我想测量一下Mac OS X上英特尔处理器在Xcode上的分支预测失败,显然是为了速度优化

有没有办法对XCode的仪器进行编程以实现这一点

我已经检查过了,不幸的是,这个信息没有出现在Xcode文档中。 我怀疑这可以通过一些自定义设置来实现

目的是识别优化问题,例如:

我知道,对于在Linux和Windows上运行的英特尔处理器,存在一个新的解决方案。在OS X上,您显然只能监视运行在Linux或Windows系统上的远程Intel处理器


与其说是一个商业工具,不如说是一种设置/编程Xcode和Apple工具的方法,以便在这个问题上至少获得最低限度的可见性。

Xcode的仪器中有硬件性能计数器(PMC):

默认情况下,
窗口>管理PM事件
中有隐藏的分支事件,根据

对于其他与此抗争的人,在仪器9.2中:

  • 选择计数器
  • 转到文件>录制选项
  • 选择“采样依据:事件”
  • 选择事件名称(请参阅),在本例中为“BR\u MISP\u RETIRED.CONDITIONAL”:

我不知道XCode,但Cachegrind可以做到。我发现存在与OSX兼容的Cachegrind版本,看起来很有希望。我将编译并试用它。另一方面,我注意到Xcode分析工具中的计数器工具(这是一个没有详细记录的工具)似乎允许“计数”看起来确实是分支预测失败的东西。