Profiling the Java Code

Mark Finkle mfinkle at mozilla.com
Wed Jan 8 16:26:54 PST 2014


For many of the pageload performance bugs [1], we used profiles of the Java code to uncover the issues. This is just a quick post covering what you need to do in order to get profiles. 

1. The Fennec build needs to be "debuggable" [2]. Nightlies are not, but local developer builds are. 
2. For profiling pageload, you can generally use Monitor/DDMS [3]. Just press the "start method tracing" button, load a page, wait, press the "stop method tracing" button. 
3. For profiling startup time, you really need to add Debug.startMethodTracing(...) and Debug.stopMethodTracing(). I added a simple patch [4] to show what I mean. 

I created some example profiles for startup and pageload. You can download them [5] and open them in Monitor/DDMS using the "File | Open File..." menu. 

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=947390 
[2] http://developer.android.com/guide/topics/manifest/application-element.html#debug 
[3] http://developer.android.com/tools/debugging/debugging-tracing.html 
[4] http://people.mozilla.org/~mfinkle/fennec/profiles/startup-tracing.patch 
[5] http://people.mozilla.org/~mfinkle/fennec/profiles 



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/mobile-firefox-dev/attachments/20140108/93804567/attachment.html>


More information about the mobile-firefox-dev mailing list