如何在 OS X 中检查 Sandy Bridge HD 3000 IGP 的时钟速度?

如何在 OS X 中检查 Sandy Bridge HD 3000 IGP 的时钟速度?

我正在编写一个跨平台的 OpenGL 应用程序,我发现 OS X 和 Windows(7 和 8)之间的性能结果非常不同。

在 Windows GPU-Z 报告中,无论如何,Sandy Bridge HD 3000 GPU 都会继续以 350Mhz 的速度运行,这可以解释为什么我的代码在 OS X 中的执行速度似乎比在 Windows 中快 5 倍。

为了验证这一点,我认为最好验证一下 OS X 中的时钟速度是否确实在提高,但是 OS X 没有 GPU-Z。

有任何想法吗?

解决这个问题的另一种方法是弄清楚如何让 IGP 在 Windows 下正确启动。我刚刚测试了sketchfab在 Chrome 中,它在 TIE 战斗机模型上达到了 1200Mhz 的完美效果(而且我对它如何很好地满足 GPU 需求感到惊讶:不太复杂的模型的时钟设置为 650 或 750Mhz。非常简洁。)

好的。所以 Chrome 确实实现了一些我没实现的正确功能。也许是时候停止使用 SDL 了。现在我必须弄清楚如何在运行我的程序时让它达到 1200Mhz。

答案1

我已经能够让程序的时钟速度提高!这种情况很偶然,因为我的图形负载大部分时间都很低。如果我施加更恒定的负载(一些更重的着色),一旦时钟速度达到最大值,我肯定会获得更一致的时序数据。

不过,这实际上真的很棒,因为这意味着我的程序经过了很好的优化,可以让 GPU 保持足够长的空闲时间,以便进行节流。当我消除程序中的睡眠调用(因此模拟运行速度比实时快得多)时,我现在能够将 GPU 时钟保持在 1200Mhz。似乎重新启动(并运行构建的发布版本)有助于它进行调整。

更新:我解决了我所面临的问题,但我没有找到令人满意的答案来回答我最初的问题,即如何在 OSX 上检查 Intel Sandy Bridge IGP 的实时时钟速度。有人能帮我吗?(可能是 Apple 工程师?)

相关内容