Mobile applications are user-facing and highly interactive, unlike traditional background and batch-processing workloads. Guaranteeing satisfactory quality-of-experience (QoE) for mobile end users is crucial. Therefore, performance is king in mobile systems. However, the single-minded pursuit of the performance-oriented mobile system design is infeasible in mobile devices, because today’s mobile devices are energy constrained. As lithium-ion battery density starts plateauing, and battery form factor begins to mature, the total device energy budget (battery density × battery volume) saturates. Hence, while performance is important, it must be balanced with energy efficient mobile system design while meeting user satisfaction.
To this end, we develop tools, techniques, and methods to understand mobile device user experience by end users. Topics include, but are not limited to novel ways of instrumenting mobile applications and the runtimes to understand user experience. We also research techniques to improve user QoE while minimizing energy consumption through runtime schedulers and hardware optimizations.