Saturday, July 20, 2013

Are Smartphones Fast Enough?

Introduction

For the last few years I have been writing a series of posts on my maths blog. When I started my blog I hosted it on Wordpress which used a LaTeX engine to support math content. Then I moved back to blogger which allowed full control of the template. I now use MathJax for all the math content on my blog.

Things were perfectly fine for me until one day I tried to access my maths blog from my HTC Android Smartphone. And to my surprise I found that it took almost 2 minutes to load the page with all the math fonts displayed properly. In the current post I will explain the details and show that Smartphones may be smart enough, but they have yet to catch up a lot on the processing front.

Smartphones are not Fast Enough

My HTC phone has a 1.2GHz dual core processor, 1GB RAM and runs Android JellyBean OS. The page I was trying to access through my HTC phone is linked here. This page uses a lot of math content and hence effectively the web page requires reasonable amount of MathJax code to run. So what we are talking about here is the JavaScript performance of a mobile web browser.

I tried the stock browser, Google Chrome, Firefox and Opera and all of them gave the web-page load time as around 2 minutes (115-120 seconds). I also tried disabling disk cache in Firefox, but it was of no use. Slightly bothered by this I experimented using my friend's Samsung Galaxy Note II which boasts of 1.6GHz quad-core CPU and 2GB RAM. On this smartphone the performance was much better and the page load time was around 70 seconds. By the way the above experiment has nothing to do with network speeds as all of the tests are done with an 8Mbps connection.

Now I present the contrast. When the same web page is loaded on old laptop (Sony Vaio, 2006 model, Windows XP Home, 1.7GHz Intel processor single core, 512 MB RAM) using Firefox 20.0 the page load time was around 53 seconds. So this 7 year-old laptop with Windows XP beats the smartest phones available in market by a wide margin. The Smartphone may be smart with many features and a zillion of interesting applications, but in terms of CPU power (and the attached crazy cost) I think the masses are being fooled by phone makers and phone OS makers. Just to complete the comparison a recent Intel i5 loads the same web page in just under 10 seconds.

Its absolutely foolish to have 2-3GB RAM and 2/4/8 cores of ARM with 1.6GHz, yet the CPU processing not even close to 1.7GHz single core Pentium and 512MB from history. I think something is seriously wrong here. Either with the low power architectures for these processors or the overhead of the platform (like Android OS uses Java for all apps). I am not sure if we are making any progress or just submitting ourselves to the media hype around smartphones.

Please think hard before spending huge sums of money on the latest smartphone!