我很害怕提出这个问题,因为它没有具体的细节和代码示例,但这是因为我在过去几周中遇到了三个完全不同的应用程序中,我认为具体的代码可能会使问题变得复杂。
我搜索了网络,没有找到任何关于我遇到的现象的参考资料,所以我将直接描述它,并希望其他人也遇到了相同的问题:
“问题”是:所有我构建的iOS OpenGL应用程序都比独立运行时在Instruments中进行分析时运行要快得多。例如,帧速率大约快两倍(从30fps跳到60fps)。这既是通过代码计时循环测量的,也是从观看应用程序运行中获得的数据。Instruments似乎做了一些神奇的事情。
这是在设备上,而不是在iOS模拟器上。如果我通过Instruments对我的OpenGL应用程序进行分析并上传到设备(具体来说是运行iOS 5.1的iPad 3),则帧速率比独立运行时要快得多。似乎没有帧跳过或类似的问题。它只是以大约两倍的速度进行相同的计算。
尽管我没有包含任何代码示例,但请假设我正在执行正常操作。使用VBOs和VAOs的OpenGL ES 2.0。使用分发队列/块对某些计算密集型代码区域进行多线程处理。没有什么奇特或疯狂的东西。
我想知道是否有人经历过类似的事情。如果没有,我将回到我的洞穴,并继续用叉子刺自己的腿。
我搜索了网络,没有找到任何关于我遇到的现象的参考资料,所以我将直接描述它,并希望其他人也遇到了相同的问题:
“问题”是:所有我构建的iOS OpenGL应用程序都比独立运行时在Instruments中进行分析时运行要快得多。例如,帧速率大约快两倍(从30fps跳到60fps)。这既是通过代码计时循环测量的,也是从观看应用程序运行中获得的数据。Instruments似乎做了一些神奇的事情。
这是在设备上,而不是在iOS模拟器上。如果我通过Instruments对我的OpenGL应用程序进行分析并上传到设备(具体来说是运行iOS 5.1的iPad 3),则帧速率比独立运行时要快得多。似乎没有帧跳过或类似的问题。它只是以大约两倍的速度进行相同的计算。
尽管我没有包含任何代码示例,但请假设我正在执行正常操作。使用VBOs和VAOs的OpenGL ES 2.0。使用分发队列/块对某些计算密集型代码区域进行多线程处理。没有什么奇特或疯狂的东西。
我想知道是否有人经历过类似的事情。如果没有,我将回到我的洞穴,并继续用叉子刺自己的腿。
-O0
),而“profile”使用发布构建(通常为-Os
)。 - tc.