Confirmed users
975
edits
(→Performance testing: Prepend critical flows and add start up details) |
(→Start up: Fix formatting) |
||
Line 9: | Line 9: | ||
There are a few different types of start up: see [[#Terminology|Terminology]] for clarifications. | There are a few different types of start up: see [[#Terminology|Terminology]] for clarifications. | ||
* COLD MAIN (to homescreen) start: | * COLD MAIN (to homescreen) start | ||
** Neither endpoint is available in the profiler. Surrogates are <code>Application.onCreate</code> or <code>*Activity.onCreate</code> | **Endpoints: process start and visual completeness (i.e. the homescreen is fully drawn) | ||
* WARM MAIN (to homescreen) start: | ***Neither endpoint is available in the profiler. Surrogates are <code>Application.onCreate</code> or <code>*Activity.onCreate</code> to the first frame is drawn (the last two have profiler markers) | ||
* COLD VIEW start: | **Bottleneck: we believe it's the main thread | ||
** | **Misc: a possibly important event for perceived performance is when the first frame is drawn | ||
* | |||
* WARM MAIN (to homescreen) start | |||
**Endpoints: <code>IntentReceiverActivity.onCreate</code> and visual completeness. | |||
**Bottleneck: see COLD MAIN | |||
**Misc: see COLD MAIN | |||
* COLD VIEW start | |||
**Endpoints: process start and <code>GeckoSession.load</code> | |||
***The latter endpoint is available as a profiler marker | |||
**Bottleneck: unknown | |||
**Misc: a possibly important event for perceived performance is when the first frame is drawn | |||
* WARM VIEW start | |||
**Endpoints: <code>IntentReceiverActivity.onCreate</code> and <code>GeckoSession.load</code> | |||
**Bottleneck: see COLD VIEW | |||
**Misc: see COLD VIEW | |||
In addition to these types of start up, there are many states/configurations a client can start up with: for example, they can have FxA set up or not set up, they may have 1000s or 0 bookmarks, etc. We haven't yet found any to have a significant impact on performance but, to be honest, we haven't yet to investigate deeply. | In addition to these types of start up, there are many states/configurations a client can start up with: for example, they can have FxA set up or not set up, they may have 1000s or 0 bookmarks, etc. We haven't yet found any to have a significant impact on performance but, to be honest, we haven't yet to investigate deeply. |