In the last week or two, I’ve started looking at speeding up our startup and page render speed on Android. We want to be significantly faster on things like eideticker’s New York Times loading benchmark. Notable things that have happened this week:
- Sriram Ramasubramanian shaved a couple hundred milliseconds off startup by changing how we construct menus.
- There’s a longstanding bug about how we determine whether to enable linker deletion of dead code on Unix platforms; this bug has bitten Android. Once it gets fixed, Android libxul should get significantly smaller, which translates into less I/O and faster startup times.
- I’ve been looking at adding more Android-only startup timeline events so it’s easier to find which areas are contributing more to startup time.
- Changing when we load libxul will improve performance on multi-core devices; Mike Hommey and Brad Lassey are both looking into this.
- Network performance on Android can be quite different from desktop. Patrick McManus has been looking into that and has found latency issues in how common ethernet drivers on Android work. With some tweaks to our networking code, performance on wifi connections is significantly improved.
Want to contribute? Know of something that affects startup or page load time on Android? We have an open bug for all issues connected with Android startup. Start looking there!