score:0

performance will usually be lower on mobile devices than on desktop kit. in general their hardware is less powerful (it's geared more towards low power consumption than outright speed) and they have a hell of a lot less ram and storage to play with. chrome on my desktop has multiple processors, 8gb ram and a ludicrously powerful gpu at it's disposal. on my ipad it doesn't have anywhere near that level of power.

3rd party ios applications (including chrome) cannot use nitro, that much is correct. i believe this is because nitro is able to mark memory as executable and (for security reasons) 3rd party applications are not trusted to do that. most html5 stuff will work in any browser on ios (with the possible exception of opera mini). canvas and svg animation will be slower than in safari because it's all driven by javascript - again the lack of access to nitro holds them back. this is no longer true: as of ios 8 third party apps can now use the wkwebview framework which does have access to the same high speed javascript engine as safari.

native code will usually be faster because it's much closer to the hardware, hitting the display apis directly, rather than going through the web stack.

the solution is usually to simplify everything. in the same way that native game developers had to massively reduce the complexity of their 3d games to make them work on ios devices, so web developers have to reduce the complexity of their svgs and canvas apps. less stuff flying around the page means higher performance, in general.

there's a number of tricks you can do, and a lot of reading around the subject. have a read of http://www.html5rocks.com/en/tutorials/canvas/performance/, http://www.html5gamedevs.com/tag/performance/, and the rest of google. personally i'd build a proof of concept and test it before completely abandoning the idea :)

score:3

i found d3.js/svg on my first gen ipad massively slower than running the same app on desktop browsers (ff/chrome/ie 9+).

i wrote up the various improvements i attempted here: http://hivemindmap.blogspot.co.uk/2013/01/html5-and-interactive-graphs.html

score:7

ios7 has notably bad performance animating svg with javascript - although static svg drawing is massively faster. we wrote a blog on the performance of the ios7 release, which you can see for more gory details.

update: ios7.1 fixed the javascript animation performance problem. it's back to 50 fps


Related Query