Why Mobile Web Apps are so Slow, Drew Crawford

Excellent article that covers lots of reasons why mobile web apps aren’t going to get faster anytime soon. Herb Sutter’s blog post lists some of the contents and a summary.

As a C++ guy, I appreciated the points about garbage collection. I like to be in control of the memory used by my software, and it’s good to know there are sound arguments why explicit memory management is superior in low memory environments:

In particular, when garbage collection has five times as much memory as required, its runtime performance matches or slightly exceeds that of explicit memory management. However, garbage collection’s performance degrades substantially when it must use smaller heaps. With three times as much memory, it runs 17% slower on average, and with twice as much memory, it runs 70% slower. Garbage collection also is more susceptible to paging when physical memory is scarce.

When JavaScript people or Ruby people or Python people hear “garbage collector”, they understand it to mean “silver bullet garbage collector.” They mean “garbage collector that frees me from thinking about managing memory.” But there’s no silver bullet on mobile devices. Everybody thinks about memory on mobile, whether they have a garbage collector or not. The only way to get “silver bullet” memory management is the same way we do it on the desktop–by having 10x more memory than your program really needs.

Leave a comment

Filed under Programming

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.