Skip to content

Performance Benchmark

davidshimjs edited this page Jan 15, 2013 · 7 revisions

In order to measure performance of mobile javascript game engine, I have created a sample test case and this report. If you want to add any other game engine, you can create the test case using your engine. and then you can send me a pull request. You can also modify this report.

A Simple specification of the test case

  • The Rabbit has a width of 129.4 pixel and a height of 165 pixel each frame. rabbit http://jindo.dev.naver.com/collie/img/small/yame_walk.png
  • There are 100 rabbits walking right. (Moving, Sprite Animation)
  • The Screen has a width of 320 pixel and a height of 480 pixel.
  • They will be always displayed inside of the screen. (the range of horizontal position is from 0 to (320 - 129.4))

A simple rules for testing

  • Select a fastest result.
  • Each test are scored out of 100 points. When a test shows 60 FPS, It's scored 100 points.
  • Round off to the nearest whole number.
Device OS Rendering Mode FPS Score
iPhone4 iOS4 DOM 11.5 19
iPhone4 iOS6 Canvas 36 60
Galaxy Note Android 2.3 Canvas 10 17
Galaxy S3 Android 4.1.1 DOM 39 65
161/400
Device OS Rendering Mode FPS Score
iPhone4 iOS4 Canvas 3.4 6
iPhone4 iOS6 Canvas 37.8 63
Galaxy Note Android 2.3 Canvas 11.6 19
Galaxy S3 Android 4.1.1 Canvas 20.3 34
122/400

Crafty rendered DOM in Android shows FPS higher than Canvas mode. but Canvas mode looks like faster than DOM mode.

Device OS Rendering Mode FPS Score
iPhone4 iOS4 DOM 1 2
iPhone4 iOS6 Canvas 1 2
Galaxy Note Android 2.3 Canvas 6 10
Galaxy S3 Android 4.1.1 Canvas 14 23
37/400
Device OS Rendering Mode FPS Score
iPhone4 iOS4 Canvas 3.3 6
iPhone4 iOS6 Canvas 27 45
Galaxy Note Android 2.3 Canvas 9.6 16
Galaxy S3 Android 4.1.1 Canvas 20 33
100/400
Device OS Rendering Mode FPS Score
iPhone4 iOS4 DOM 3 5
iPhone4 iOS6 Canvas 5 8
Galaxy Note Android 2.3 Canvas 11 18
Galaxy S3 Android 4.1.1 Canvas 10 17
48/400

Sprite.js can be rendered maximum 30 FPS because It supports frame skip with skipPaint and disableUpdate attributes.

Device OS Rendering Mode FPS Score
iPhone4 iOS4 Canvas 4 7
iPhone4 iOS6 Canvas 29 48
Galaxy Note Android 2.3 Canvas 9.8 16
Galaxy S3 Android 4.1.1 Canvas 12.5 21
92/400
Device OS Rendering Mode FPS Score
iPhone4 iOS4 DOM 1 2
iPhone4 iOS6 DOM 17.3 29
Galaxy Note Android 2.3 DOM 20 33
Galaxy S3 Android 4.1.1 DOM 6.2 10
74/400
A Test with Galaxy Note is slower than with Galaxy S3.