Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sudden Drop in Performance on an iPad AIR application with renderMode=GPU

We have an AIR application running on an Apple iPad, that occasionally experiences sudden drop in its performance. The frame rate drops from 60fps to 2fps and it never recovers from that.

Some of our observations are:

  • this is only reproducible on iOS 4, but never on iOS 5 - we've checked that on two identical iPads (generation 1)
  • the performance drops occasionally, but always happens when we switch between apps - from our app to another and back
  • very rarely, the performance drop also happens on first start of the app
  • this performance issue does not happen in renderMode=CPU, but this mode doesn't work for us, because the rendering is ugly, especially on rotated bitmaps

Has anyone else experienced similar issues? Any ideas how to workaround it?

like image 656
Vladimir Tsvetkov Avatar asked Jan 13 '12 10:01

Vladimir Tsvetkov


1 Answers

This sounds like a AIR runtime bug with the GPU rendering since it happens only on iOS 4 and not iOS 5. However, it is possible that your iOS 4 device has too little on-board GPU memory for keeping all the cached transformations. Once your cache is full, a huge performance drop will be seen (perhaps the same drop your seeing). You should use object pooling as much as possible to keep the cached transformations minimal.

like image 113
Jonathan Dunlap Avatar answered Oct 02 '22 03:10

Jonathan Dunlap