roguish

Mobile Performance Tester — Now Live in App Stores

Performance Tester Icon
The Roguish Mobile Performance Test Application has been released on 3 mobile platforms: iOS, BlackBerry PlayBook and Android. The app is designed to demonstrate the performance difference with various Flash development settings and techniques. I’ll update this post with more details about the app and performance test results.

The app was published with Flash Builder 4.5 and the AIR 2.7 overlay.

Below are the download links in the various app stores:


iOS (GPU and CPU compiled versions as separate apps):

BlackBerry PlayBook (CPU only)

Android Market (GPU and CPU compiled versions as separate apps):

Original blog post about the performance tester, including source code from an older version:
http://www.roguish.com/blog/?p=214

Testing Method
Results are FPS achieved with 130 balls. For tests where 60fps is reached, the number of balls are increased until the framerate dips below 60fps and results are reported as number of balls that can be animated at 60fps and are listed in parenthesis as (balls@60fps).

* Results in parenthesis are *better* because those results are the only results where 60fps is achieved.

GPU v.2.4.1, iPad v.1 — results as FPS w/130 balls*
Best      
Low      
CaB    
CaBM  
 
Raster Sprite 12 45 41 (195@60fps) 40 (195@60fps)
BitmapData Bitmap 12 46 41 (200@60fps) 40 (195@60fps)
Vector Sprite 10 20 40 (200@60fps) 39 (195@60fps)
Stage Blitting 12 20 15 25 15 25

 

CPU v.2.4.0, iPad v.1 — results as FPS w/130 balls*
Best      
Low      
CaB    
CaBM  
 
Raster Sprite 45 45 41 41 40 39
BitmapData Bitmap 50 50 43 43 40 40
Vector Sprite 4 12 40 41 40 40
Stage Blitting 30 30 30 30 30 29

4 ResponsesLeave one →

  1. Re: GPU test, I am curious as to why there would be such a drastic difference when turning CaB on and off with BitmapData Bitmaps. Are Bitmaps not automatically cached as Bitmaps? Doesn’t the need to cache a Bitmap as a Bitmap seem redundant?

    Reply
    • Elliot Mebane

       /  August 13, 2011

      Duffy — Yes, setting CaB on a Bitmap does seem redundant and unnecessary. The speed difference seen in the Performance Tester shows that GPU can composite the art in a scene more efficiently if a display object has CaB set, regardless of the kind of artwork in the display object (Bitmap or Vector). Caching the Bitmap must help the GPU understand that it can re-use that texture in subsequent screen compositions. Without CaB the GPU must be converting the Raster data into a GPU Texture every frame before compositing that texture into the final scene with the other textures in that scene, and there must be some overhead to this process (is it called swizzling?).

      This kind of discovery is exactly what this tool is for — to reveal the counter-intuitive idiosyncrasies of this bleeding edge technology so we can build snappy apps!

      All the testing will have to be re-done when a new version of AIR for mobile is released as Adobe is constantly working behind the scenes to maximize performance and all these discoveries may change over time.

      Reply
  1. Performance Benchmarks with AIR 2.7 for iOS | unFocus Projects
  2. GPU Test App AIR for Mobile | roguish

Leave a Reply