Major commit for preparing 1.1.1 release
[spandex:spandex.git] / bd / benchmarks / opengles2 / benchmark.py
1 #\r
2 # Spandex benchmark and test framework.\r
3 #\r
4 # Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).\r
5 #\r
6 # Contact: Kari J. Kangas <kari.j.kangas@nokia.com>\r
7 #\r
8 #   This framework is free software; you can redistribute it and/or modify it\r
9 # under the terms of the GNU Lesser General Public License as published by the\r
10 # Free Software Foundation, version 2.1 of the License.\r
11 #\r
12 #   This framework is distributed in the hope that it will be useful, but\r
13 # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
14 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License\r
15 # for more details.\r
16 #\r
17 #   You should have received a copy of the GNU Lesser General Public License\r
18 # along with this framework; if not, see <http://www.gnu.org/licenses/>.\r
19 #\r
20 \r
21 # Potential additional benchmarks\r
22 #    * better vbo benchmarks: two meshes with slightly different data\r
23 #    * triangle fan\r
24 #    * depth test\r
25 #    ...\r
26 \r
27 #----------------------------------------------------------------------\r
28 import  sys\r
29 sys.path.append( '../../python' )\r
30 sys.path.append( '../..' )\r
31 \r
32 import  bd\r
33 \r
34 #----------------------------------------------------------------------\r
35 suite, command          = bd.init()\r
36 \r
37 suite.targetModulePath  = '../../lib/targets'\r
38 suite.name              = 'OpenGLES2.0 benchmark'\r
39 \r
40 builder                 = suite.getBuilder( command.target )\r
41 target                  = suite.getTargetModule( command.target )\r
42 modules                 = builder.actionModules\r
43 \r
44 #----------------------------------------------------------------------\r
45 ( width, height, )      = target.getScreenSize()\r
46 \r
47 #----------------------------------------------------------------------\r
48 import resources\r
49 suite.addBenchmark( resources.PrintResourceProfile( 'start' ) )\r
50 \r
51 #----------------------------------------------------------------------\r
52 import info\r
53 suite.addBenchmark( info.PrintOpenGLES2Info() )\r
54 \r
55 #----------------------------------------------------------------------\r
56 import clear\r
57 suite.addBenchmark( clear.ClearBenchmark( [ 'GL_COLOR_BUFFER_BIT' ] ) )\r
58 suite.addBenchmark( clear.ClearBenchmark( [ 'GL_COLOR_BUFFER_BIT', 'GL_DEPTH_BUFFER_BIT' ] ) )\r
59 suite.addBenchmark( clear.SynchronizedClearBenchmark( [ 'GL_COLOR_BUFFER_BIT' ] ) )\r
60 \r
61 #----------------------------------------------------------------------\r
62 import marketing\r
63 GRIDX    = 2\r
64 GRIDY    = 2\r
65 OVERDRAW = 32\r
66 suite.addBenchmark( marketing.SmoothPixelsBenchmark( GRIDX, GRIDY, OVERDRAW ) )\r
67 suite.addBenchmark( marketing.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
68 suite.addBenchmark( marketing.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB888' ) )\r
69 suite.addBenchmark( marketing.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA8888' ) )\r
70 suite.addBenchmark( marketing.SmoothTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
71 suite.addBenchmark( marketing.FlatMultitexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565','OPENGLES2_LUMINANCE8' ) )\r
72 suite.addBenchmark( marketing.SmoothMultitexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565','OPENGLES2_LUMINANCE8' ) )\r
73 suite.addBenchmark( marketing.PixelFillrateBenchmark( OVERDRAW ) )\r
74 suite.addBenchmark( marketing.TexelFillrateBenchmark( OVERDRAW, 'OPENGLES2_RGB565', False ) )\r
75 suite.addBenchmark( marketing.TexelFillrateBenchmark( OVERDRAW, 'OPENGLES2_RGB565', True ) )\r
76 suite.addBenchmark( marketing.RotatedTexelFillrateBenchmark( OVERDRAW, 'OPENGLES2_RGB565' ) )\r
77 \r
78 #----------------------------------------------------------------------\r
79 import realistic\r
80 GRIDX    = 20\r
81 GRIDY    = 32\r
82 OVERDRAW = 3\r
83 suite.addBenchmark( realistic.SmoothPixelsBenchmark( GRIDX, GRIDY, OVERDRAW ) )\r
84 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', False ) )\r
85 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB888', False ) )\r
86 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA8888', False ) )\r
87 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True ) )\r
88 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB888', True ) )\r
89 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA8888', True ) )\r
90 suite.addBenchmark( realistic.SmoothTexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
91 suite.addBenchmark( realistic.FlatMultitexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565','OPENGLES2_LUMINANCE8' ) )\r
92 suite.addBenchmark( realistic.SmoothMultitexelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565','OPENGLES2_LUMINANCE8' ) )\r
93 \r
94 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', True ) )\r
95 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 2, 'OPENGLES2_RGB565', True ) )\r
96 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 4, 'OPENGLES2_RGB565', True ) )\r
97 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 6, 'OPENGLES2_RGB565', True ) )\r
98 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 8, 'OPENGLES2_RGB565', True ) )\r
99 suite.addBenchmark( realistic.FlatTexelsBenchmark( GRIDX, GRIDY, 10, 'OPENGLES2_RGB565', True ) )\r
100 \r
101 #----------------------------------------------------------------------\r
102 import draworder\r
103 GRIDX     = 20\r
104 GRIDY     = 32\r
105 OVERDRAW  = 3\r
106 suite.addBenchmark( draworder.DrawOrderBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', draworder.BACK_TO_FRONT ) )\r
107 suite.addBenchmark( draworder.DrawOrderBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', draworder.FRONT_TO_BACK ) )\r
108 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, OVERDRAW, 'OPENGLES2_RGB565', draworder.BACK_TO_FRONT ) )\r
109 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, OVERDRAW, 'OPENGLES2_RGB565', draworder.FRONT_TO_BACK ) )\r
110 \r
111 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 2, 'OPENGLES2_RGB565', draworder.BACK_TO_FRONT ) )\r
112 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 2, 'OPENGLES2_RGB565', draworder.FRONT_TO_BACK ) )\r
113 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 4, 'OPENGLES2_RGB565', draworder.BACK_TO_FRONT ) )\r
114 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 4, 'OPENGLES2_RGB565', draworder.FRONT_TO_BACK ) )\r
115 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 8, 'OPENGLES2_RGB565', draworder.BACK_TO_FRONT ) )\r
116 suite.addBenchmark( draworder.DrawOrderBenchmark( 2, 2, 8, 'OPENGLES2_RGB565', draworder.FRONT_TO_BACK ) )\r
117 \r
118 #----------------------------------------------------------------------\r
119 import transformation\r
120 GRIDX     = 48\r
121 GRIDY     = 128\r
122 OVERDRAW  = 3\r
123 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, None, transformation.NONE ) )\r
124 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, None, transformation.HALF ) )\r
125 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, None, transformation.FULLY ) )\r
126 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', transformation.NONE ) )\r
127 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', transformation.HALF ) )\r
128 suite.addBenchmark( transformation.TransformationBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', transformation.FULLY ) )\r
129 \r
130 #----------------------------------------------------------------------\r
131 import texturetype\r
132 GRIDX     = 20\r
133 GRIDY     = 32\r
134 OVERDRAW  = 3\r
135 suite.addBenchmark( texturetype.TextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
136 suite.addBenchmark( texturetype.TextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB888' ) )\r
137 suite.addBenchmark( texturetype.TextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA4444' ) )\r
138 suite.addBenchmark( texturetype.TextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA5551' ) )\r
139 suite.addBenchmark( texturetype.TextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGBA8888' ) )\r
140 \r
141 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_RGB565' ) )\r
142 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_ETC1_RGB8' ) )\r
143 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_PVRTC_RGB2' ) )\r
144 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_PVRTC_RGB4' ) )\r
145 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_PVRTC_RGBA2' ) )\r
146 suite.addBenchmark( texturetype.CompressedTextureTypeBenchmark( GRIDX, GRIDY, OVERDRAW, 'IMAGES_PVRTC_RGBA4' ) )\r
147 \r
148 #----------------------------------------------------------------------\r
149 import texturesize\r
150 GRIDX     = 20\r
151 GRIDY     = 32\r
152 OVERDRAW  = 3\r
153 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 32, 32, 'OPENGLES2_RGB565' ) )\r
154 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 64, 64, 'OPENGLES2_RGB565' ) )\r
155 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 127, 127, 'OPENGLES2_RGB565' ) )\r
156 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 128, 128, 'OPENGLES2_RGB565' ) )\r
157 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 255, 255, 'OPENGLES2_RGB565' ) )\r
158 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 256, 'OPENGLES2_RGB565' ) )\r
159 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 511, 511, 'OPENGLES2_RGB565' ) )\r
160 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 512, 512, 'OPENGLES2_RGB565' ) )\r
161 \r
162 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 32, 32, 'OPENGLES2_RGBA8888' ) )\r
163 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 64, 64, 'OPENGLES2_RGBA8888' ) )\r
164 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 127, 127, 'OPENGLES2_RGBA8888' ) )\r
165 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 128, 128, 'OPENGLES2_RGBA8888' ) )\r
166 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 255, 255, 'OPENGLES2_RGBA8888' ) )\r
167 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 256, 'OPENGLES2_RGBA8888' ) )\r
168 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 511, 511, 'OPENGLES2_RGBA8888' ) )\r
169 suite.addBenchmark( texturesize.TextureSizeBenchmark( GRIDX, GRIDY, OVERDRAW, 512, 512, 'OPENGLES2_RGBA8888' ) )\r
170 \r
171 #----------------------------------------------------------------------\r
172 import texturemipmap\r
173 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 512, 512, 'OPENGLES2_RGBA8888', 'GL_LINEAR', 'GL_LINEAR', 'GL_CLAMP_TO_EDGE' ) )\r
174 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 512, 512, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_CLAMP_TO_EDGE' ) )\r
175 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 512, 512, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_REPEAT' ) )\r
176 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 512, 512, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_MIRRORED_REPEAT' ) )\r
177 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 640, 360, 'OPENGLES2_RGBA8888', 'GL_LINEAR', 'GL_LINEAR', 'GL_CLAMP_TO_EDGE' ) )\r
178 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 640, 360, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_CLAMP_TO_EDGE' ) )\r
179 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 640, 360, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_REPEAT' ) )\r
180 suite.addBenchmark( texturemipmap.MipmapBenchmark( 2, 2, 1, 640, 360, 'OPENGLES2_RGBA8888', 'GL_NEAREST_MIPMAP_LINEAR', 'GL_LINEAR', 'GL_MIRRORED_REPEAT' ) )\r
181 \r
182 #----------------------------------------------------------------------\r
183 import vertexstore\r
184 GRIDX     = 20\r
185 GRIDY     = 32\r
186 OVERDRAW  = 3\r
187 suite.addBenchmark( vertexstore.VertexStoreBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', vertexstore.ARRAYS ) )\r
188 suite.addBenchmark( vertexstore.VertexStoreBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', vertexstore.MESH ) )\r
189 suite.addBenchmark( vertexstore.VertexStoreBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', vertexstore.VBO_ARRAYS ) )\r
190 suite.addBenchmark( vertexstore.VertexStoreBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', vertexstore.VBO_MESH ) )\r
191 \r
192 #----------------------------------------------------------------------\r
193 import triangles\r
194 GRIDX     = 20\r
195 GRIDY     = 32\r
196 OVERDRAW  = 3\r
197 suite.addBenchmark( triangles.TrianglesBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', triangles.STRIP ) )\r
198 suite.addBenchmark( triangles.TrianglesBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', triangles.DISCRETE ) )\r
199 \r
200 #----------------------------------------------------------------------\r
201 import elements\r
202 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 1, 1 ) )\r
203 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 1, 32 ) )\r
204 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 1, 64 ) )\r
205 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 10, 1 ) )\r
206 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 10, 32 ) )\r
207 suite.addBenchmark( elements.VboPointsBenchmark( 10, 10, 10, 64 ) )\r
208 \r
209 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 1, 1 ) )\r
210 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 1, 32 ) )\r
211 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 1, 64 ) )\r
212 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 10, 1 ) )\r
213 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 10, 32 ) )\r
214 suite.addBenchmark( elements.PointsBenchmark( 10, 10, 10, 64 ) )\r
215 \r
216 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 1, 1.0 ) )\r
217 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 32, 1.0 ) )\r
218 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 64, 1.0 ) )\r
219 suite.addBenchmark( elements.LinesBenchmark( 256, 1, 64, 0.01 ) )\r
220 suite.addBenchmark( elements.LinesBenchmark( 256, 1, 64, 1.0 ) )\r
221 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 1, 1.0 ) )\r
222 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 32, 1.0 ) )\r
223 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 64, 1.0 ) )\r
224 \r
225 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 1, 0.5 ) )\r
226 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 32, 0.5 ) )\r
227 suite.addBenchmark( elements.LinesBenchmark( 32, 1, 64, 0.5 ) )\r
228 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 1, 0.5 ) )\r
229 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 32, 0.5 ) )\r
230 suite.addBenchmark( elements.LinesBenchmark( 32, 10, 64, 0.5 ) )\r
231 \r
232 suite.addBenchmark( elements.VboLinesBenchmark( 32, 1, 1, 1.0 ) )\r
233 suite.addBenchmark( elements.VboLinesBenchmark( 32, 1, 32, 1.0 ) )\r
234 suite.addBenchmark( elements.VboLinesBenchmark( 32, 1, 64, 1.0 ) )\r
235 suite.addBenchmark( elements.VboLinesBenchmark( 32, 10, 1, 1.0 ) )\r
236 suite.addBenchmark( elements.VboLinesBenchmark( 32, 10, 32, 1.0 ) )\r
237 suite.addBenchmark( elements.VboLinesBenchmark( 32, 10, 64, 1.0 ) )\r
238 \r
239 #----------------------------------------------------------------------\r
240 import texturemod\r
241 GRIDX     = 20\r
242 GRIDY     = 32\r
243 OVERDRAW  = 1\r
244 suite.addBenchmark( texturemod.TwiddleBenchmark( 128, 128, 'OPENGLES2_RGB565' ) )\r
245 suite.addBenchmark( texturemod.TwiddleBenchmark( 255, 255, 'OPENGLES2_RGB565' ) )\r
246 suite.addBenchmark( texturemod.TwiddleBenchmark( 256, 256, 'OPENGLES2_RGB565' ) )\r
247 suite.addBenchmark( texturemod.TwiddleBenchmark( 511, 511, 'OPENGLES2_RGB565' ) )\r
248 suite.addBenchmark( texturemod.TwiddleBenchmark( 512, 512, 'OPENGLES2_RGB565' ) )\r
249 suite.addBenchmark( texturemod.TwiddleBenchmark( 1023, 1023, 'OPENGLES2_RGB565' ) )\r
250 suite.addBenchmark( texturemod.TwiddleBenchmark( 1024, 1024, 'OPENGLES2_RGB565' ) )\r
251 suite.addBenchmark( texturemod.TwiddleBenchmark( 128, 128, 'OPENGLES2_RGBA8888' ) )\r
252 suite.addBenchmark( texturemod.TwiddleBenchmark( 256, 256, 'OPENGLES2_RGBA8888' ) )\r
253 suite.addBenchmark( texturemod.TwiddleBenchmark( 512, 512, 'OPENGLES2_RGBA8888' ) )\r
254 suite.addBenchmark( texturemod.TwiddleBenchmark( 1024, 1024, 'OPENGLES2_RGBA8888' ) )\r
255 \r
256 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 128, 'IMAGES_ETC1_RGB8' ) )\r
257 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 256, 'IMAGES_ETC1_RGB8' ) )\r
258 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 512, 'IMAGES_ETC1_RGB8' ) )\r
259 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 1024, 'IMAGES_ETC1_RGB8' ) )\r
260 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 128, 'IMAGES_PVRTC_RGB4' ) )\r
261 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 256, 'IMAGES_PVRTC_RGB4' ) )\r
262 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 512, 'IMAGES_PVRTC_RGB4' ) )\r
263 suite.addBenchmark( texturemod.UploadCompressedBenchmark( 1024, 'IMAGES_PVRTC_RGB4' ) )\r
264 \r
265 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 0, 0, 4  ) )\r
266 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 0, 4  ) )\r
267 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 1, 4  ) )\r
268 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 2, 4  ) )\r
269 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 3, 4  ) )\r
270 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 4, 4  ) )\r
271 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 2, 4  ) )\r
272 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 3, 4  ) )\r
273 suite.addBenchmark( texturemod.UploadAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 4, 4  ) )\r
274 \r
275 #----------------------------------------------------------------------\r
276 import vertextype\r
277 GRIDX     = 20\r
278 GRIDY     = 32\r
279 OVERDRAW  = 3\r
280 suite.addBenchmark( vertextype.VertexTypeBenchmark( GRIDX, GRIDY, OVERDRAW, vertextype.FIXED ) )\r
281 suite.addBenchmark( vertextype.VertexTypeBenchmark( GRIDX, GRIDY, OVERDRAW, vertextype.FLOAT ) )\r
282 \r
283 #----------------------------------------------------------------------\r
284 import blending\r
285 GRIDX     = 20\r
286 GRIDY     = 32\r
287 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 0, 4, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
288 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 1, 3, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
289 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 2, 2, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
290 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 3, 1, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
291 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 4, 0, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
292 \r
293 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGBA8888', 4, 0, 'GL_ONE', 'GL_ZERO' ) )\r
294 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 4, 0, 'GL_ONE', 'GL_ZERO' ) )\r
295 suite.addBenchmark( blending.BlendBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 4, 0, 'GL_SRC_ALPHA', 'GL_ONE_MINUS_SRC_ALPHA' ) )\r
296 \r
297 #----------------------------------------------------------------------\r
298 import scissor\r
299 GRIDX    = 20\r
300 GRIDY    = 32\r
301 OVERDRAW = 3\r
302 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [] ) )\r
303 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width, height ] ) )\r
304 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width - 10, height - 10 ] ) )\r
305 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 10, 10, width - 10, height - 10 ] ) )\r
306 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width, height / 2 ] ) )\r
307 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, height / 2, width, 2 ] ) )\r
308 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ width / 2, 0, 2, height ] ) )\r
309 suite.addBenchmark( scissor.ScissorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ width / 2, height / 2, 10, 10 ] ) )\r
310 \r
311 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [], 1, [] ) )\r
312 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [], 1, [ 0, 0, width, height ] ) )\r
313 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width, height ], 1, [] ) )\r
314 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width, height ], 1, [ 0, 0, width, height ] ) )\r
315 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width - 10, height - 10 ], 1, [ 10, 10, width - 10, height - 10 ] ) )\r
316 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, height / 2, width, height/ 2 ], 1, [ 0, 0, width, height / 2 ] ) )\r
317 suite.addBenchmark( scissor.ScissorSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, height / 2, width, height/ 2 ], 1, [ 0, 0, width, height / 2 + 10 ] ) )\r
318 \r
319 #----------------------------------------------------------------------\r
320 import viewport\r
321 GRIDX    = 20\r
322 GRIDY    = 32\r
323 OVERDRAW = 3\r
324 suite.addBenchmark( viewport.ViewportBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [] ) )\r
325 suite.addBenchmark( viewport.ViewportBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 10, 10, width - 20 , height - 20 ] ) )\r
326 suite.addBenchmark( viewport.ViewportBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width / 2 , height / 2 ] ) )\r
327 suite.addBenchmark( viewport.ViewportBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ width / 4, height / 4, width / 2 , height / 2 ] ) )\r
328 suite.addBenchmark( viewport.ViewportBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, height / 2, width / 2 ] ) )\r
329 \r
330 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [], 1, [] ) )\r
331 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [], 1, [ 0, 0, width, height ] ) )\r
332 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width, height ], 1, [] ) )\r
333 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width, height ], 1, [ 0, 0, width, height ] ) )\r
334 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, 0, width - 10, height - 10 ], 1, [ 10, 10, width - 10, height - 10 ] ) )\r
335 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, height / 2, width, height/ 2 ], 1, [ 0, 0, width, height / 2 ] ) )\r
336 suite.addBenchmark( viewport.ViewportSwitchBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', 1, [ 0, height / 2, width, height/ 2 ], 1, [ 0, 0, width, height / 2 + 10 ] ) )\r
337 \r
338 #----------------------------------------------------------------------\r
339 import colormask\r
340 GRIDX    = 20\r
341 GRIDY    = 32\r
342 OVERDRAW = 3\r
343 suite.addBenchmark( colormask.ColorMaskBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True, True, True, True ) )\r
344 suite.addBenchmark( colormask.ColorMaskBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True, False, False, False ) )\r
345 suite.addBenchmark( colormask.ColorMaskBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True, True, False, False ) )\r
346 suite.addBenchmark( colormask.ColorMaskBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True, True, True, False ) )\r
347 \r
348 #----------------------------------------------------------------------\r
349 import copyteximage\r
350 GRIDX    = 20\r
351 GRIDY    = 32\r
352 OVERDRAW = 1\r
353 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( 256, 256, 'OPENGLES2_RGB565' ) )\r
354 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( 256, 512, 'OPENGLES2_RGB565' ) )\r
355 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( 512, 512, 'OPENGLES2_RGB565' ) )\r
356 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( width, height, 'OPENGLES2_RGB565' ) )\r
357 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( width, height, 'OPENGLES2_RGB888' ) )\r
358 suite.addBenchmark( copyteximage.CopyTexImageBenchmark( width, height, 'OPENGLES2_RGBA8888' ) )\r
359 \r
360 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 0, 0, 4  ) )\r
361 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 1, 0, 4  ) )\r
362 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 1, 1, 4  ) )\r
363 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 1, 2, 4  ) )\r
364 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 1, 3, 4  ) )\r
365 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 1, 4, 4  ) )\r
366 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 2, 2, 4  ) )\r
367 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 2, 3, 4  ) )\r
368 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, 256, 512, 'OPENGLES2_RGB565', 2, 4, 4  ) )\r
369 \r
370 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 0, 0, 4  ) )\r
371 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 0, 4  ) )\r
372 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 1, 4  ) )\r
373 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 2, 4  ) )\r
374 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 3, 4  ) )\r
375 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 1, 4, 4  ) )\r
376 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 2, 4  ) )\r
377 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 3, 4  ) )\r
378 suite.addBenchmark( copyteximage.CopyAndUseBenchmark( GRIDX, GRIDY, OVERDRAW, width, height, 'OPENGLES2_RGB565', 2, 4, 4  ) )\r
379 \r
380 #----------------------------------------------------------------------\r
381 import bufferload\r
382 GRIDX    = 20\r
383 GRIDY    = 32\r
384 OVERDRAW = 1\r
385 suite.addBenchmark( bufferload.BufferLoadBenchmark( 10 * 1024, 'GL_ARRAY_BUFFER', 'GL_STATIC_DRAW' ) )\r
386 suite.addBenchmark( bufferload.BufferLoadBenchmark( 100 * 1024, 'GL_ARRAY_BUFFER', 'GL_STATIC_DRAW' ) )\r
387 suite.addBenchmark( bufferload.BufferLoadBenchmark( 1000 * 1024, 'GL_ARRAY_BUFFER', 'GL_STATIC_DRAW' ) )\r
388 suite.addBenchmark( bufferload.BufferLoadBenchmark( 1000 * 1024, 'GL_ELEMENT_ARRAY_BUFFER', 'GL_STATIC_DRAW' ) )\r
389 suite.addBenchmark( bufferload.BufferLoadBenchmark( 1000 * 1024, 'GL_ARRAY_BUFFER', 'GL_DYNAMIC_DRAW' ) )\r
390 suite.addBenchmark( bufferload.BufferLoadBenchmark( 1000 * 1024, 'GL_ARRAY_BUFFER', 'GL_STREAM_DRAW' ) )\r
391 \r
392 suite.addBenchmark( bufferload.LoadBufferAndDrawBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', False ) )\r
393 suite.addBenchmark( bufferload.LoadBufferAndDrawBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True ) )\r
394 \r
395 #----------------------------------------------------------------------\r
396 import multisampling\r
397 GRIDX    = 20\r
398 GRIDY    = 32\r
399 OVERDRAW = 1\r
400 suite.addBenchmark( multisampling.MultisamplingBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1  ) )\r
401 suite.addBenchmark( multisampling.MultisamplingBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2  ) )\r
402 suite.addBenchmark( multisampling.MultisamplingBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4  ) )\r
403 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGB565', 1  ) )\r
404 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGB565', 2  ) )\r
405 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGB565', 4  ) )\r
406 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGBA8888', 1  ) )\r
407 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGBA8888', 2  ) )\r
408 suite.addBenchmark( multisampling.MultisamplingBenchmark( 2, 2, 1, 'OPENGLES2_RGBA8888', 4  ) )\r
409 \r
410 #----------------------------------------------------------------------\r
411 import stencil\r
412 GRIDX    = 20\r
413 GRIDY    = 32\r
414 OVERDRAW = 1\r
415 suite.addBenchmark( stencil.StencilBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', False  ) )\r
416 suite.addBenchmark( stencil.StencilBenchmark( GRIDX, GRIDY, 'OPENGLES2_RGB565', True  ) )\r
417 \r
418 #----------------------------------------------------------------------\r
419 import readpixels\r
420 GRIDX    = 20\r
421 GRIDY    = 32\r
422 OVERDRAW = 1\r
423 suite.addBenchmark( readpixels.ReadPixelsBenchmark( 128, 128 ) )\r
424 suite.addBenchmark( readpixels.ReadPixelsBenchmark( 256, 256 ) )\r
425 suite.addBenchmark( readpixels.ReadPixelsBenchmark( width, height / 2 ) )\r
426 suite.addBenchmark( readpixels.ReadPixelsBenchmark( width, height ) )\r
427 \r
428 # REQUIRES EGL\r
429 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 128, 128, readpixels.WINDOW ) )\r
430 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 256, 256, readpixels.WINDOW ) )\r
431 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height / 2, readpixels.WINDOW ) )\r
432 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height, readpixels.WINDOW ) )\r
433 \r
434 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 128, 128, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB565' ) )\r
435 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 256, 256, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB565' ) )\r
436 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height / 2, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB565' ) )\r
437 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB565' ) )\r
438 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 128, 128, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB888' ) )\r
439 suite.addBenchmark( readpixels.CopyBuffersBenchmark( 256, 256, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB888' ) )\r
440 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height / 2, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB888' ) )\r
441 suite.addBenchmark( readpixels.CopyBuffersBenchmark( width, height, readpixels.PBUFFER, 'SCT_COLOR_FORMAT_RGB888' ) )\r
442 \r
443 suite.addBenchmark( readpixels.DrawAndReadPixelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, -1  ) )\r
444 suite.addBenchmark( readpixels.DrawAndReadPixelsBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 0  ) )\r
445 \r
446 #----------------------------------------------------------------------\r
447 import mipmap\r
448 GRIDX    = 20\r
449 GRIDY    = 32\r
450 OVERDRAW = 1\r
451 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 128, 128, 'OPENGLES2_RGB565', False ) )\r
452 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 128, 128, 'OPENGLES2_RGB565', True ) )\r
453 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 256, 256, 'OPENGLES2_RGB565', False ) )\r
454 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 256, 256, 'OPENGLES2_RGB565', True ) )\r
455 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 512, 512, 'OPENGLES2_RGB565', False ) )\r
456 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 512, 512, 'OPENGLES2_RGB565', True ) )\r
457 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 1024, 1024, 'OPENGLES2_RGB565', False ) )\r
458 suite.addBenchmark( mipmap.UploadAndGenerateMipmapBenchmark( 1024, 1024, 'OPENGLES2_RGB565', True ) )\r
459 \r
460 suite.addBenchmark( mipmap.UploadGenerateMipmapAndDrawBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 512, 512, -1, False ) )\r
461 suite.addBenchmark( mipmap.UploadGenerateMipmapAndDrawBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 512, 512, 0, False ) )\r
462 suite.addBenchmark( mipmap.UploadGenerateMipmapAndDrawBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 512, 512, 0, True ) )\r
463 \r
464 #----------------------------------------------------------------------\r
465 import polygonoffset\r
466 GRIDX    = 20\r
467 GRIDY    = 32\r
468 OVERDRAW = 1\r
469 suite.addBenchmark( polygonoffset.PolygonOffsetBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', False ) )\r
470 suite.addBenchmark( polygonoffset.PolygonOffsetBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', True ) )\r
471 \r
472 #----------------------------------------------------------------------\r
473 import shader\r
474 GRIDX    = 20\r
475 GRIDY    = 32\r
476 OVERDRAW = 3\r
477 suite.addBenchmark( shader.SetupSimpleShaderBenchmark() )\r
478 suite.addBenchmark( shader.SetupMediumShaderBenchmark() )\r
479 suite.addBenchmark( shader.SwitchSimpleProgramBenchmark() )\r
480 suite.addBenchmark( shader.SwitchMediumProgramBenchmark() )\r
481 \r
482 suite.addBenchmark( shader.RealisticProgramSwitchBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', -1 ) )\r
483 suite.addBenchmark( shader.RealisticProgramSwitchBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1 ) )\r
484 \r
485 #----------------------------------------------------------------------\r
486 import precision\r
487 GRIDX    = 20\r
488 GRIDY    = 32\r
489 OVERDRAW = 3\r
490 suite.addBenchmark( precision.ShaderPrecisionBenchmark(  GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'mediump' ) )\r
491 suite.addBenchmark( precision.ShaderPrecisionBenchmark(  GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'highp' ) )\r
492 \r
493 #----------------------------------------------------------------------\r
494 import rendertobuffer\r
495 GRIDX      = 20\r
496 GRIDY      = 32\r
497 OVERDRAW   = 3\r
498 DEPTH_BITS = 16\r
499 suite.addBenchmark( rendertobuffer.RenderToWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2 ) )\r
500 suite.addBenchmark( rendertobuffer.RenderToWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height ) )\r
501 \r
502 suite.addBenchmark( rendertobuffer.RenderToBufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'GL_RGB565', rendertobuffer.READPIXELS ) )\r
503 suite.addBenchmark( rendertobuffer.RenderToBufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'GL_RGB565', rendertobuffer.FINISH ) )\r
504 suite.addBenchmark( rendertobuffer.RenderToBufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'GL_RGB565', rendertobuffer.READPIXELS ) )\r
505 suite.addBenchmark( rendertobuffer.RenderToBufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'GL_RGB565', rendertobuffer.FINISH ) )\r
506 \r
507 # REQUIRES EGL\r
508 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.READPIXELS ) )\r
509 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.COPYBUFFERS ) )\r
510 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.FINISH ) )\r
511 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.READPIXELS ) )\r
512 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.COPYBUFFERS ) )\r
513 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height / 2, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.FINISH ) )\r
514 \r
515 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.READPIXELS ) )\r
516 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.COPYBUFFERS ) )\r
517 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, rendertobuffer.FINISH ) )\r
518 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.READPIXELS ) )\r
519 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.COPYBUFFERS ) )\r
520 suite.addBenchmark( rendertobuffer.RenderToPbufferBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'SCT_COLOR_FORMAT_RGB888', DEPTH_BITS, rendertobuffer.FINISH ) )\r
521 \r
522 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB565', -1 ) )\r
523 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB565', 0 ) )\r
524 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB565', 1 ) )\r
525 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB888', -1 ) )\r
526 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB888', 0 ) )\r
527 suite.addBenchmark( rendertobuffer.RenderToTextureBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', width, height, 'OPENGLES2_RGB888', 1 ) )\r
528 \r
529 #----------------------------------------------------------------------\r
530 import light\r
531 GRID1    = ( 10, 16, )\r
532 GRID2    = ( 20, 32, )\r
533 OVERDRAW = 3\r
534 suite.addBenchmark( light.ReferenceBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
535 suite.addBenchmark( light.ReferenceBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
536 suite.addBenchmark( light.SimpleDiffuseBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
537 suite.addBenchmark( light.SimpleDiffuseBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
538 suite.addBenchmark( light.ComplexDiffuseBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
539 suite.addBenchmark( light.ComplexDiffuseBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
540 suite.addBenchmark( light.SimpleSpecularBlinnBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
541 suite.addBenchmark( light.SimpleSpecularBlinnBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
542 suite.addBenchmark( light.ComplexSpecularBlinnBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
543 suite.addBenchmark( light.ComplexSpecularBlinnBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
544 suite.addBenchmark( light.ComplexSpecularBlinnWithTextureBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
545 suite.addBenchmark( light.ComplexSpecularBlinnWithTextureBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
546 suite.addBenchmark( light.SimpleSpecularPhongBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
547 suite.addBenchmark( light.SimpleSpecularPhongBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
548 suite.addBenchmark( light.ComplexSpecularPhongBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW ) )\r
549 suite.addBenchmark( light.ComplexSpecularPhongBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW ) )\r
550 suite.addBenchmark( light.ComplexSpecularPhongWithTextureBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
551 suite.addBenchmark( light.ComplexSpecularPhongWithTextureBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
552 suite.addBenchmark( light.PerPixelPhongBenchmark( GRID1[ 0 ], GRID1[ 1 ] , OVERDRAW ) )\r
553 suite.addBenchmark( light.PerPixelPhongBenchmark( GRID2[ 0 ], GRID2[ 1 ] , OVERDRAW ) )\r
554 suite.addBenchmark( light.PerPixelPhongWithTextureBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
555 suite.addBenchmark( light.PerPixelPhongWithTextureBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
556 suite.addBenchmark( light.SimpleTnLBenchmark( GRID1[ 0 ], GRID1[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
557 suite.addBenchmark( light.SimpleTnLBenchmark( GRID2[ 0 ], GRID2[ 1 ], OVERDRAW, 'OPENGLES2_RGB565' ) )\r
558 \r
559 #----------------------------------------------------------------------\r
560 import alphatest\r
561 GRIDX    = 20\r
562 GRIDY    = 32\r
563 OVERDRAW = 3\r
564 suite.addBenchmark( alphatest.AlphaTestBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1.00 ) )\r
565 suite.addBenchmark( alphatest.AlphaTestBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0.75 ) )\r
566 suite.addBenchmark( alphatest.AlphaTestBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0.50 ) )\r
567 suite.addBenchmark( alphatest.AlphaTestBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0.25 ) )\r
568 suite.addBenchmark( alphatest.AlphaTestBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0.00 ) )\r
569 \r
570 #----------------------------------------------------------------------\r
571 import game\r
572 # REQUIRES EGL\r
573 suite.addBenchmark( game.GameBenchmark( 1, 0, 1 ) )\r
574 suite.addBenchmark( game.GameBenchmark( 1, 0, 4 ) )\r
575 suite.addBenchmark( game.GameBenchmark( 0, 1, 1 ) )\r
576 suite.addBenchmark( game.GameBenchmark( 0, 1, 4 ) )\r
577 suite.addBenchmark( game.GameBenchmark( 1, 1, 1 ) )\r
578 suite.addBenchmark( game.GameBenchmark( 1, 1, 4 ) )\r
579 \r
580 #----------------------------------------------------------------------\r
581 import surfaces         \r
582 GRIDX    = 20\r
583 GRIDY    = 32\r
584 OVERDRAW = 3\r
585 # REQUIRES EGL\r
586 suite.addBenchmark( surfaces.WindowSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'EGL_SINGLE_BUFFER' ) )\r
587 suite.addBenchmark( surfaces.WindowSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'EGL_BACK_BUFFER' ) )\r
588 \r
589 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGBA8888', surfaces.READPIXELS ) )\r
590 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGBA8888', surfaces.COPYBUFFERS ) )\r
591 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGBA8888', surfaces.FINISH ) )\r
592 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGB565', surfaces.READPIXELS ) )\r
593 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGB565', surfaces.COPYBUFFERS ) )\r
594 suite.addBenchmark( surfaces.PbufferSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGB565', surfaces.FINISH ) )\r
595 \r
596 suite.addBenchmark( surfaces.PixmapSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGBA8888' ) )\r
597 suite.addBenchmark( surfaces.PixmapSurfaceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_COLOR_FORMAT_RGB565' ) )\r
598 \r
599 #----------------------------------------------------------------------\r
600 import egl\r
601 GRIDX    = 20\r
602 GRIDY    = 32\r
603 OVERDRAW = 3\r
604 # REQUIRES EGL\r
605 suite.addBenchmark( egl.PrintEglInfo() )\r
606 suite.addBenchmark( egl.CreateContextBenchmark() )\r
607 suite.addBenchmark( egl.CreatePbufferSurfaceBenchmark( 'SCT_COLOR_FORMAT_RGB565' ) )\r
608 suite.addBenchmark( egl.CreatePbufferSurfaceBenchmark( 'SCT_COLOR_FORMAT_RGBA8888' ) )\r
609 suite.addBenchmark( egl.CreatePixmapSurfaceBenchmark( 'SCT_COLOR_FORMAT_RGB565' ) )\r
610 suite.addBenchmark( egl.CreatePixmapSurfaceBenchmark( 'SCT_COLOR_FORMAT_RGBA8888' ) )\r
611 suite.addBenchmark( egl.SwapBehaviorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'EGL_BUFFER_DESTROYED' ) )\r
612 suite.addBenchmark( egl.SwapBehaviorBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'EGL_BUFFER_PRESERVED' ) )\r
613 suite.addBenchmark( egl.SwapIntervalBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0 ) )\r
614 suite.addBenchmark( egl.SwapIntervalBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1 ) )\r
615 suite.addBenchmark( egl.SwapIntervalBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2 ) )\r
616 suite.addBenchmark( egl.SwapIntervalBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 3 ) )\r
617 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], None, None ) )\r
618 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width / 2, height / 2 ], None, None ) )\r
619 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ width / 2, height / 2 ], [ 0, 0, width, height ] ) )\r
620 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ width, height ], [ width / 4, height / 4, width / 2, height / 2 ] ) )\r
621 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ 240, 320 ], None, None ) )\r
622 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ 240, 320 ], [ 0, 0, width, height ] ) )\r
623 ar = min( width / 240.0, height / 320.0 )\r
624 w = int( 240 * ar )\r
625 h = int( 320 * ar )\r
626 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ 240, 320 ], [ ( width - w  ) / 2, ( height - h ) / 2 , w, h ] ) )\r
627 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ 320, 480 ], None, None ) )\r
628 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ 320, 480 ], [ 0, 0, width, height ] ) )\r
629 ar = min( width / 320.0, height / 480.0 )\r
630 w = int( 320 * ar )\r
631 h = int( 480 * ar )\r
632 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ 320, 480 ], [ ( width - w  ) / 2, ( height - h ) / 2 , w, h ] ) )\r
633 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ width / 2, height / 2 ], [ 0, 0, width / 2 + 1, height / 2 + 1 ] ) )\r
634 suite.addBenchmark( egl.SurfaceScalingBenchmark( GRIDX, GRIDY, 1, 'OPENGLES2_RGB565', [ width, height ], [ width / 2, height /2 ], [ width / 2, height / 2, width / 2, height / 2 ] ) )\r
635 \r
636 #----------------------------------------------------------------------\r
637 import windows\r
638 GRIDX      = 2\r
639 GRIDY      = 2\r
640 OVERDRAW   = 1\r
641 DEPTH_BITS = 16\r
642 # REQUIRES EGL\r
643 suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [], [] ) )\r
644 suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width, height ], [ 0, 0, width, height ] ) )\r
645 suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width - 1, height - 1 ], [ 1, 1, width - 1, height - 1 ] ) )\r
646 suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, width - 10, height - 10 ], [ 10, 10, width - 10, height - 10 ] ) )\r
647 \r
648 #-x = min( width, height )\r
649 #-suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, x, x - 1 ], [ 0, 0, x - 1, x ] ) )\r
650 #-suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, 360, 360 ], [ 0, 0, 360, 360 ] ) )\r
651 #-suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, 360, 359 ], [ 0, 0, 359, 360 ] ) )\r
652 #-suite.addBenchmark( windows.ResizeWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', [ 0, 0, 350, 360 ], [ 0, 0, 360, 350 ] ) )\r
653 \r
654 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0, 0, 0 ) )\r
655 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 1, 0 ) )\r
656 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 2, 0 ) )\r
657 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2, 2, 0 ) )\r
658 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2, 3, 0 ) )\r
659 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 3, 3, 0 ) )\r
660 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 3, 0 ) )\r
661 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 0 ) )\r
662 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0, 0, 1 ) )\r
663 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 1, 1 ) )\r
664 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 2, 1 ) )\r
665 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2, 2, 1 ) )\r
666 suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2, 3, 1 ) )\r
667 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 3, 3, 1 ) )\r
668 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 3, 1 ) )\r
669 #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 1 ) )\r
670 \r
671 suite.addBenchmark( windows.ChildWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 1, 0 ) )\r
672 suite.addBenchmark( windows.ChildWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 2, 0 ) )\r
673 suite.addBenchmark( windows.ChildWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 1, 1 ) )\r
674 suite.addBenchmark( windows.ChildWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 2, 1 ) )\r
675 \r
676 # #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 3, 1 ) )\r
677 # #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 1 ) )\r
678 # #-suite.addBenchmark( windows.TopWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 5, 5, 1 ) )\r
679 \r
680 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1, 1, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.FINISH ) )\r
681 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 2, 2, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.FINISH ) )\r
682 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 3, 3, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.FINISH ) )\r
683 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.FINISH ) )\r
684 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.READPIXELS ) )\r
685 suite.addBenchmark( windows.PbuffersBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 4, 4, 'SCT_COLOR_FORMAT_RGB565', DEPTH_BITS, windows.COPYBUFFERS ) )\r
686 \r
687 suite.addBenchmark( windows.RotateScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_ORIENTATION_PORTRAIT', 0 ) )\r
688 suite.addBenchmark( windows.RotateScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_ORIENTATION_LANDSCAPE', 0 ) )\r
689 suite.addBenchmark( windows.RotateScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_ORIENTATION_PORTRAIT', 1 ) )\r
690 suite.addBenchmark( windows.RotateScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_ORIENTATION_LANDSCAPE', 1 ) )\r
691 \r
692 suite.addBenchmark( windows.OpaqueWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 1.0 ) )\r
693 suite.addBenchmark( windows.OpaqueWindowBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 0.3 ) )\r
694 \r
695 #----------------------------------------------------------------------\r
696 import ui\r
697 \r
698 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
699 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
700 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.GROUPS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
701 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.ICONS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
702 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
703 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
704 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
705 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
706 \r
707 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
708 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
709 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.GROUPS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
710 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.ICONS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
711 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
712 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
713 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
714 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
715 \r
716 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
717 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
718 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.GROUPS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
719 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.ICONS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
720 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
721 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
722 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
723 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
724 \r
725 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
726 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.PANELS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
727 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.GROUPS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
728 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.ICONS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
729 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
730 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
731 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
732 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
733 \r
734 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
735 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.PANELS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
736 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.GROUPS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
737 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.ICONS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
738 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
739 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
740 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
741 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], False, 'OPENGLES2_RGBA8888', 1 ) )\r
742 \r
743 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
744 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
745 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.GROUPS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
746 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.ICONS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
747 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
748 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
749 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
750 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
751 \r
752 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
753 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
754 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.GROUPS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
755 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.ICONS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
756 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
757 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
758 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
759 suite.addBenchmark( ui.UiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
760 \r
761 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
762 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
763 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.GROUPS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
764 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.ICONS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
765 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
766 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
767 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
768 suite.addBenchmark( ui.UiBenchmark( ui.UPLOAD_AND_DRAW, [ ui.BACKGROUND, ui.PANELS, ui.GROUPS, ui.ICONS  ], True, 'OPENGLES2_RGBA8888', 0 ) )\r
769 \r
770 matrices = [ 75, 100, 150, 200, 250, 300 ]\r
771 #- for l in matrices:\r
772 #-     suite.addBenchmark( ui.Invert4x4MatrixBenchmark( l, 1 ) )\r
773 \r
774 suite.addBenchmark( ui.ParallelUiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', 0 ) )\r
775 for m in matrices:\r
776     suite.addBenchmark( ui.ParallelUiBenchmark( ui.DRAW, [ ui.BACKGROUND, ui.PANELS ], False, 'OPENGLES2_RGBA8888', m ) )\r
777 \r
778 #----------------------------------------------------------------------\r
779 import special\r
780 suite.addBenchmark( special.DependentTextureBenchmark( 'OPENGLES2_RGB565' ) )\r
781 suite.addBenchmark( special.DependentTextureBenchmark( 'OPENGLES2_RGBA8888' ) )\r
782 suite.addBenchmark( special.ParticlesBenchmark( 10, 10, 16, 'OPENGLES2_RGB565', False ) )\r
783 suite.addBenchmark( special.ParticlesBenchmark( 10, 10, 16, 'OPENGLES2_RGB565', True ) )\r
784 suite.addBenchmark( special.ParticlesBenchmark( 10, 10, 16, 'OPENGLES2_RGBA8888', False ) )\r
785 suite.addBenchmark( special.ParticlesBenchmark( 10, 10, 16, 'OPENGLES2_RGBA8888', True ) )\r
786 suite.addBenchmark( special.SkyboxBenchmark( 'OPENGLES2_RGBA8888' ) )\r
787 suite.addBenchmark( special.MediaWallSkyboxBenchmark( 'OPENGLES2_RGBA8888' ) )\r
788 \r
789 # #----------------------------------------------------------------------\r
790 # import screen\r
791 # GRIDX    = 20\r
792 # GRIDY    = 32\r
793 # OVERDRAW = 3\r
794 # # REQUIRES EGL\r
795 # suite.addBenchmark( screen.ScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_DEFAULT' ) )\r
796 # suite.addBenchmark( screen.ScreenBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565', 'SCT_SCREEN_HDMI' ) )\r
797 \r
798 # #----------------------------------------------------------------------\r
799 # import threads\r
800 # GRIDX    = 20\r
801 # GRIDY    = 32\r
802 # OVERDRAW = 3\r
803 # # REQUIRES EGL\r
804 \r
805 # suite.addBenchmark( threads.ParallelWindowsBenchmark( 1, GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
806 # suite.addBenchmark( threads.ParallelWindowsBenchmark( 2, GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
807 # suite.addBenchmark( threads.ParallelWindowsBenchmark( 3, GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
808 \r
809 # suite.addBenchmark( threads.SwapReferenceBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
810 # # suite.addBenchmark( threads.CreateWindowAndDrawMainSwapWorkerBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
811 # suite.addBenchmark( threads.CreateWindowAndSwapFromMainDrawFromWorkerBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
812 # suite.addBenchmark( threads.DrawFromMainCreateWindowAndSwapFromWorkerBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
813 # suite.addBenchmark( threads.CreatePbufferAndDrawMainReadWorkerBenchmark( GRIDX, GRIDY, OVERDRAW, 'OPENGLES2_RGB565' ) )\r
814 \r
815 # suite.addBenchmark( threads.TextureUploadReferenceBenchmark( 2, 2, width, height, 'OPENGLES2_RGB565' ) )\r
816 # suite.addBenchmark( threads.ThreadedTextureUploadBenchmark( 2, 2, width, height, 'OPENGLES2_RGB565' ) )\r
817 # # suite.addBenchmark( threads.ThreadedSharedTextureUploadBenchmark( 2, 2, width, height, 'OPENGLES2_RGB565' ) )\r
818 \r
819 # suite.addBenchmark( threads.RenderToTextureReferenceBenchmark( 2, 2, width, height, 'OPENGLES2_RGBA8888' ) )\r
820 # suite.addBenchmark( threads.ThreadedRenderToTextureBenchmark( 2, 2, width, height, 'OPENGLES2_RGBA8888' ) )\r
821 # # suite.addBenchmark( threads.ThreadedRenderToSharedTextureBenchmark( 2, 2, width, height, 'OPENGLES2_RGBA8888' ) )\r
822 \r
823 #----------------------------------------------------------------------\r
824 import resources\r
825 suite.addBenchmark( resources.PrintResourceProfile( 'end' ) )\r
826 \r
827 #----------------------------------------------------------------------\r
828 command()\r