Closed
Bug 674579
Opened 13 years ago
Closed 6 years ago
Mobile: consider manually separating hot startup libxul from the rest
Categories
(Developer Infrastructure :: Source Code Analysis, defect)
Developer Infrastructure
Source Code Analysis
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: stechz, Unassigned)
References
Details
(Whiteboard: mobilestartupshrink)
To reduce the number of I/O accesses during startup before XRE_main, we could separate the code needed for startup from the rest of libxul.so. Taras estimates that we use about 20% of our binary code during startup, so this could cut reading and relocating down to a fraction of its current time. Perhaps we could even speculatively load the other library after startup in a background thread? PGO has the potential to do this work as well, but on Android we would probably need a custom version of GCC to move forward this way. To me this looks like a lot of work.
Reporter | ||
Updated•13 years ago
|
Whiteboard: mobilestartupshrink
Comment 1•13 years ago
|
||
(In reply to comment #0) > PGO has the potential to do this work as well, but on Android we would > probably need a custom version of GCC to move forward this way. To me this > looks like a lot of work. It really isn't. It's a few months of work.
Comment 2•13 years ago
|
||
(In reply to comment #0) > Taras estimates that we use about 20% of our binary code during startup. That's really more like 50%, IMO. And there are things that are hard to separate from each other. Things I noted on the etherpad that could probably be separated out, with binary sizes: - media libraries (vpx = 116k, ogg = 6k, nestegg = 12k, tremor = 67k, theora = 38k, sydneyaudio = 4k ; overall might not be worth the bother) - svg (870k for libgkcontentsvg_s) - webgl (buried in gfx, not sure it's big, but angle is 214k) - uconv (714k, but we don't need all the converters until much later) - necko (1M, that seems like a whole lot) - (...)
Comment 3•13 years ago
|
||
we need necko for startup.
Comment 4•13 years ago
|
||
(In reply to comment #3) > we need necko for startup. we certainly don't need most of it.
Comment 5•13 years ago
|
||
Is this bug covered by bug 632954 (PGO for android)?
Comment 6•13 years ago
|
||
(In reply to Alon Zakai (:azakai) from comment #5) > Is this bug covered by bug 632954 (PGO for android)? It is not. In theory bug 686805 will make make this bug redundant
Updated•6 years ago
|
Product: Core → Firefox Build System
Updated•6 years ago
|
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(nika)
Resolution: --- → INVALID
Updated•6 years ago
|
Flags: needinfo?(nika)
Updated•2 years ago
|
Product: Firefox Build System → Developer Infrastructure
You need to log in
before you can comment on or make changes to this bug.
Description
•