2010-11-04 76 views
1

我正在寻找iPhone 3G/3GS图形系统(opengl)与PC/MAC上的比较。iPhone上的OpenGL基准测试

Google没有帮助。也许这里有人吗?

+0

你在寻找性能基准吗?不妨将法拉利比作自行车。 – mikerobi 2010-11-04 14:33:37

+0

@mikerobi - 正如我在答复中所述,性能差异并不像您想象的那么好。虽然现代桌面GPU在大多数应用中往往比移动GPU更强大,但在某些情况下,移动GPU可能会超越旧桌面硬件。 – 2010-11-04 16:05:30

回答

3

虽然这可能是更多的硬件问题,但是这里有足够的可能影响基于OpenGL的应用程序的设计。

使用我的分子应用程序作为模板,我测试了运行在iPhone 3G,iPad和第二代MacBook Air(Nvidia GeForce 9400M)上的渲染吞吐量。为MacBook,从在模拟器什么也没有在系统上执行其他运行的应用程序生成的数字:

iPhone 3G: 423,000 triangles/s 
iPad: 1,830,000 triangles/s 
MacBook Air: 2,150,000 triangles/s 

你可以抓住的code for the application并通过启用RUN_OPENGL_BENCHMARKS在SLSMoleculeGLViewController定义自己试用。这会导致结构渲染100帧,然后测量总时间并根据显示的模型复杂度计算渲染速率。

请注意,这是一个OpenGL ES 1.1应用程序,它的当前状态是几何限制的。填充率受限的应用程序可能具有完全不同的性能特征,与使用OpenGL/OpenGL ES 2.0着色器的应用程序相同。

除了性能差异之外,OpenGL命令集在iOS和Mac之间也有所不同。多年来,OpenGL ES将OpenGL中构建的许多瑕疵(即时模式等)剔除出去。一般来说,OpenGL ES是OpenGL的一个子集,所以你可以将很多为OpenGL ES编写的东西移植到OpenGL上,而不会遇到很多麻烦。桌面上的OpenGL也为其着色器(1.4,我相信)使用GLSL的新版本,因此在iOS设备上不支持某些支持的命令。

Apple在iOS的OpenGL ES编程指南的Platform Notes部分中有更多关于平台特定差异的内容。

+0

哇。这是一个非常好的答案。谢谢! – kolinko 2010-11-05 06:44:15