Commit c43bf515229ecb3a345603c690d199ac1d23b5b3

Authored by Scott Haseley
1 parent 9aa9847d

Progress

badwords
  1 +AppInsight
  2 +AsyncTask
  3 +AsyncTasks
  4 +cgroup
  5 +Challen
  6 +challen
  7 +edu
  8 +Haseley
  9 +HotMobile
  10 +ondemand
  11 +pdfinfo
  12 +prioritization
  13 +QoE
  14 +shaseley
... ...
design.tex 0 → 100644
  1 +\section{design}
  2 +A QoE-centric OS must continuously prioritize resources based on their
  3 +effect on QoE. Doing so requires the OS to both quantify QoE and understand
  4 +which tasks contribute to it. Given the multi-threaded nature of modern apps,
  5 +the complexity of the systems they run on, and the operating system's vantage
  6 +point, this is a challenging task. Unlike approaches like
  7 +AppInsight~\cite{appinsight-osdi2012} that requires app instrumentation, or
  8 +QoE Doctor~\cite{qoe-doctor-imc14} which involves human intervention, using QoE
  9 +to do continuous resource prioritization for all apps on all devices requires
  10 +the ability to measure QoE on unmodified apps and without developer
  11 +participation.
  12 +
  13 +% Task prioritization
  14 +As principle, if a user is waiting for something, priority should
  15 +be given to any task that contributes to that end.
  16 +
  17 +%Network prioritization...
  18 +
  19 +%I/O prioritization...
  20 +
  21 +%New approaches...
... ...
introduction.tex 0 → 100644
  1 +\section{introduction}
  2 +
  3 +Current operating systems are already proficient at managing certain system
  4 +resources, such as the CPU, memory, and disk. But on interactive mobile devices,
  5 +users care more about resources such as time, battery life, and money, that are
  6 +unmanaged or poorly managed by today's smartphone platforms.
  7 +When apps slow down our typing, they waste our time. When apps download
  8 +unnecessary resources, they waste battery life and potentially money, if using
  9 +a metered data plan. It is the degree two which mobile devices effectively
  10 +manage these human-facing resources that determines a user's
  11 +\textit{quality of experience} (QoE), and it is QoE which should drive not just
  12 +policy, but decisions on mobile devices.
  13 +
  14 +\begin{sloppypar}
  15 +While modern operating systems such as Android make decisions based on policies
  16 +meant to improve QoE, it is unclear that these static policies always result
  17 +in the right decisions. For example, Android uses two mechanisms to control the
  18 +underlying task scheduling in Linux: thread priority and control groups (cgroup).
  19 +Background threads - any thread running in another app, or low priority threads
  20 +running in the foreground app - are placed in a cgroup that receives a very
  21 +limited share of the processor, \( \approx \) 5\% on Nexus 5 running stock
  22 +Android 5.1.1. Furthermore, the scheduler considers priority for tasks withing
  23 +the same cgroup. However, thread priorities can be set by app developers both
  24 +directly through the API, and indirectly by creating an \texttt{AsyncTask}.
  25 +While this policy was created based on the assumed effect on QoE, it is still
  26 +possible to negatively affect QoE by assigning the wrong priority to a thread
  27 +or by inappropriately using \texttt{AsyncTasks}.
  28 +\end{sloppypar}
  29 +
  30 +The \texttt{ondemand} CPU frequency governor that is enabled in Android
  31 +Linux is another example of where static policy meant to improve QoE may not
  32 +result in correct decisions being made. This governor changes the CPU frequency
  33 +depending on the current CPU load with the goal of improving performance.
  34 +However since running at higher frequencies is less efficient, this increased
  35 +performance comes at the cost. If QoE would not be improved by increasing the
  36 +frequency, such as for time-insensitive background tasks or when the performance
  37 +increase would not be perceivable, negative QoE may manifest itself through a
  38 +quicker draining battery.
  39 +
  40 +Static policies can lead to resource allocation decisions that are less than
  41 +optimal in terms of QoE. To remedy this, we propose designing QoE-centric
  42 +mobile operating systems that can accurately quantify QoE and use it as feedback
  43 +to drive resource allocation decisions.
... ...
paper.tex
1 1 \input{./include/start.tex}
2 2  
3 3 \def\theconference{HotMobile'16}
4   -\def\thetitle{Poster: Quantifying Quality of Experience Using the Screen as a Sensor}
5   -\def\theauthors{Scott Haseley$^\star$, Geoffrey Challen$^\star$}
  4 +\def\thetitle{Poster: QoE-centric Mobile Operating System Design}
  5 +\def\theauthors{Scott Haseley, Geoffrey Challen}
6 6 \def\theemails{\{shaseley,challen\}@buffalo.edu}
7 7  
8 8 \ifdefined\isdraft
... ... @@ -32,7 +32,7 @@
32 32  
33 33 \author{
34 34 \alignauthor\theauthors\\[0.05in]
35   - \affaddr{$\star$ University at Buffalo}\\
  35 + \affaddr{University at Buffalo}\\
36 36 \email{\theemails}
37 37 }
38 38  
... ... @@ -48,7 +48,9 @@
48 48  
49 49 \maketitle
50 50  
51   -\input{abstract.tex}
  51 +%\input{abstract.tex}
  52 +\input{introduction.tex}
  53 +\input{design.tex}
52 54  
53 55 {\scriptsize
54 56 \renewcommand{\baselinestretch}{0.8}
... ...
references.bib
... ... @@ -581,3 +581,19 @@ pages = {1-14},
581 581 year={2008},
582 582 publisher={Elsevier}
583 583 }
  584 +
  585 +@inproceedings{qoe-doctor-imc14,
  586 + title = {QoE Doctor: Diagnosing Mobile App QoE with Automated
  587 +UI Control and Cross-layer Analysis},
  588 + author = {Qi Alfred Chen and Haokun Luo and Sanae Rosen and Z. Morley Mao and
  589 +Karthik Iyer and Jie Hui and Kranthi Sontineni and Kevin Lau},
  590 + booktitle = proc # {ACM Internet Measurement Conference},
  591 + year = {2014}
  592 +}
  593 +
  594 +@inproceedings{appinsight-osdi2012,
  595 + title = {AppInsight: Mobile App Performance Monitoring in the Wild},
  596 + author = {Lenin Ravindranath and Jitendra Padhye and Sharad Agarwal and Ratul Mahajan and Ian Obermiller and Shahin Shayandeh},
  597 + booktitle = proc # {OSDI},
  598 + year = {2012}
  599 +}
... ...