What causes the iOS OpenGLES driver to allocate extra memory?

Posted by Martin Linklater on Game Development See other posts from Game Development or by Martin Linklater
Published on 2012-11-23T12:04:56Z Indexed on 2012/11/23 17:20 UTC
Read the original article Hit count: 261

Filed under:
|

I'm trying to optimize the memory usage of our iOS game and I'm puzzled about when/why the iOS GLES driver allocates extra memory at runtime... When I run our game through Instruments with the OpenGL ES Driver instrument the gartUsedBytes value can fluctuate quite wildly. We preload all our textures and build the buffer objects up front, so it's not the game engine requesting extra memory from GL.

Currently we are manually requesting around 50MB of GL memory, yet the gartUsedBytes value sits at around 90MB most of the time, peaking at 125MB from time to time. It seems to be linked to what you are rendering that frame - our PVS only submits VBO's for visible meshes.

Can anyone shed some light on what the driver is doing in the background ? Like I said earlier, all our game engine allocations are done on level load, so in theory there shouldn't be any fluctuation on GL memory usage while the level is running.

Thanks.

© Game Development or respective owner

Related posts about ios

Related posts about opengl-es2