在iOS上估算每秒OpenGL帧数的最佳方法是*不是* Apple的仪器?

时间:2012-08-06 18:57:15

标签: performance opengl-es instruments

我们有一个基于Apple的GLCameraRipple示例的应用程序,可以对来自iOS设备的摄像头的视频进行实时图像处理。

Apple的仪器报告称OpenGL的运行速度为~30-40fps(每25-30 ms就有一帧)。假设以30fps的速度捕获和处理视频,这是有道理的。

但是,如果我们使用mach_absolute_time测量调用glkView:drawInRect之间的时间,则循环时间为50 ms(约为20 fps)。该速率几乎是Instruments报告速度的一半。

Apple的仪器错误(几乎100%(!)) - 或者是对glkView的定时调用:drawInRect错了吗?

Apple的Instruments似乎不准确,因为不是glkView:drawInRect在每个绘制周期都会调用吗?

我们发现others已注意到相同的差异,但没有明确答案,哪个实际上是正确的。

为什么会出现差异?如果Apple的仪器出错了 - 测量往返glkView的往返时间:dr​​awInRect正确的方法来确定FPS吗?

0 个答案:

没有答案