Apps Performance, why it matters, how to improve it
Discuss the performance of apps: rendering time, memory footprint, responsiveness, etc.
Why does it matter?
What are the stakes?
How to measure it?
How to fix it?
How to keep it good?
Blueprint information
- Status:
- Not started
- Approver:
- Pat McGowan
- Priority:
- Undefined
- Drafter:
- Florian Boucault
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Approved
- Series goal:
- Accepted for trusty
- Implementation:
- Unknown
- Milestone target:
- ubuntu-14.04
- Started by
- Completed by
Whiteboard
App performance presentation:
https:/
QML performance analyzer
http://
Areas to explore:
- built in ActivityIndicator progress indicator when using UbuntuShape with asyn image being loaded
- some sort of feedback when pressing button so user knows they've clicked it and action being executed
↑ to me, this is the responsibility of the developer. However, the framework should indicate when there's a synchronous action running on a UI Thread (i.e. if you know something runs long, show a spinner. If that wasn't expected though or you handle it incorrectly as a dev and it should have been asynchronous, the framework should indicate "you see, this color/whatever feedback indicates there's something still running")
- possible feedback for apps which stopped responding
- add app launch time to the logs?
- dev tools: FPS, touches, view outlines, etc
Work Items
Work items:
[bfiller] Perform an analysis of app startup time: INPROGRESS
[fboucault] Ask design on how to present feedback for long-time operations: TODO
[fboucault] Find out how rendering is performed in the emulator: DONE
[saviq] determine cause of slowdown when multiple apps have been lauched: TODO
[coreygoldberg] apply to autopilot tests spit out rendering time by setting env vars (#millsecs per frame): TODO
Dependency tree
* Blueprints in grey have been implemented.