Commit 6e5eae37f33792b460552da7f2db7cab8bcf0a91

Authored by Anudipa Maiti
1 parent 787d6a35

camera ready version #2

conclusion.tex~ deleted
1 -\section{Conclusions}  
2 -\label{sec-conclusion}  
3 -  
4 -To conclude, we have argued that our inability to estimate app value is a  
5 -critical weakness that is threatening our successes at accurately estimating  
6 -and attributing energy consumption. We have motivated the need for a value  
7 -measure by describing the multiple ways in which it would aid in the  
8 -management of energy and other resources on battery-powered smartphones.  
9 -Using an energy consumption dataset collected on \PhoneLab{} we have explored  
10 -separately several potential inputs to a value measure and determined how  
11 -they weight energy consumption. And finally, we have presented results from a  
12 -failed effort to formulate an effective value measure. While this first  
13 -attempt was unsuccessful, we hope to engage the mobile systems community in  
14 -this effort so that more sophisticated and successful value measures can be  
15 -developed.  
16 -  
17 -\section*{Acknowledgments}  
18 -  
19 -Students and faculty working on estimating app value are supported by NSF  
20 -awards  
21 -\href{http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=1205656}{1205656}  
22 -and  
23 -\href{http://www.nsf.gov/awardsearch/showAward.do?AwardNumber=1423215}{1423215}.  
24 -The authors thank the anonymous reviewers for their feedback.  
figures/tables/tableALL.tex
1 \begin{table*}[t] 1 \begin{table*}[t]
2 \begin{subtable}[t]{0.5\textwidth} 2 \begin{subtable}[t]{0.5\textwidth}
3 {\small 3 {\small
4 -\begin{tabularx}{\columnwidth}{rXr} 4 +\begin{tabularx}{\columnwidth}{rrr}
5 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} & 5 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
6 \multicolumn{1}{c}{\normalsize{\textbf{App}}} & 6 \multicolumn{1}{c}{\normalsize{\textbf{App}}} &
7 \multicolumn{1}{c}{\normalsize{\textbf{Energy (As)}}} \\ 7 \multicolumn{1}{c}{\normalsize{\textbf{Energy (As)}}} \\
@@ -34,10 +34,10 @@ @@ -34,10 +34,10 @@
34 \end{subtable}% 34 \end{subtable}%
35 \begin{subtable}[t]{0.5\textwidth} 35 \begin{subtable}[t]{0.5\textwidth}
36 {\small 36 {\small
37 -\begin{tabularx}{\columnwidth}{Xrr} 37 +\begin{tabularx}{\columnwidth}{rrc}
38 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} & 38 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
39 -\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} &  
40 -\multicolumn{1}{c}{\normalsize{\textbf{Value}}} \\ 39 +\multicolumn{1}{c}{\normalsize{\textbf{App}}} &
  40 +\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} \\
41 \toprule 41 \toprule
42 \num{1} & \texttt{Facebook Messenger} & 0.774 \\ 42 \num{1} & \texttt{Facebook Messenger} & 0.774 \\
43 \num{2} & \texttt{Google+} & 0.614 \\ 43 \num{2} & \texttt{Google+} & 0.614 \\
@@ -70,7 +70,7 @@ @@ -70,7 +70,7 @@
70 \end{subtable}\\[0.1in] 70 \end{subtable}\\[0.1in]
71 \begin{subtable}[t]{0.5\textwidth} 71 \begin{subtable}[t]{0.5\textwidth}
72 {\small 72 {\small
73 -\begin{tabularx}{\columnwidth}{Xrr} 73 +\begin{tabularx}{\columnwidth}{@{\extracolsep{\fill}}rrrr}
74 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} & 74 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
75 \multicolumn{1}{c}{\normalsize{\textbf{App Name}}} & 75 \multicolumn{1}{c}{\normalsize{\textbf{App Name}}} &
76 \multicolumn{1}{c}{\normalsize{\textbf{Efficiency}}} \\ 76 \multicolumn{1}{c}{\normalsize{\textbf{Efficiency}}} \\
@@ -106,7 +106,7 @@ @@ -106,7 +106,7 @@
106 \end{subtable}% 106 \end{subtable}%
107 \begin{subtable}[t]{0.5\textwidth} 107 \begin{subtable}[t]{0.5\textwidth}
108 {\small 108 {\small
109 -\begin{tabularx}{\columnwidth}{Xrr} 109 +\begin{tabularx}{\columnwidth}{@{\extracolsep{\fill}}rrrr}
110 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} & 110 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
111 \multicolumn{1}{c}{\normalsize{\textbf{App Name}}} & 111 \multicolumn{1}{c}{\normalsize{\textbf{App Name}}} &
112 \multicolumn{1}{c}{\normalsize{\textbf{Value}}} \\ 112 \multicolumn{1}{c}{\normalsize{\textbf{Value}}} \\
figures/tables/tableALL.tex~ 0 โ†’ 100644
  1 +\begin{table*}[t]
  2 +\begin{subtable}[t]{0.5\textwidth}
  3 +{\small
  4 +\begin{tabularx}{\columnwidth}{rrr}
  5 +\multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
  6 +\multicolumn{1}{c}{\normalsize{\textbf{App}}} &
  7 +\multicolumn{1}{c}{\normalsize{\textbf{Energy (As)}}} \\
  8 +\toprule
  9 +\num{1} & \texttt{Android Browser} & 41052.703 \\
  10 +\num{2} & \texttt{Facebook} & 37268.388 \\
  11 +\num{3} & \texttt{Chrome Browser} & 22719.020 \\
  12 +\num{4} & \texttt{Android Phone} & 18122.433 \\
  13 +\num{5} & \texttt{Gmail} & 17402.896 \\
  14 +\num{6} & \texttt{Android Messaging} & 17342.926 \\
  15 +\num{7} & \texttt{WhatsApp Messenger} & 16467.477 \\
  16 +\num{8} & \texttt{Google Search} & 15370.252 \\
  17 +\num{9} & \texttt{Candy Crush Saga} & 12767.649 \\
  18 +\num{10} & \texttt{Android Gallery} & 11050.363 \\
  19 +\bottomrule
  20 +\num{10} & \texttt{Google+} & 586.586 \\
  21 +\num{9} & \texttt{Android Calculator} & 449.474 \\
  22 +\num{8} & \texttt{NFL Mobile} & 344.492 \\
  23 +\num{7} & \texttt{UB Parking} & 311.766 \\
  24 +\num{6} & \texttt{Super-Bright LED Flashlight} & 218.870 \\
  25 +\num{5} & \texttt{Starbucks} & 174.609 \\
  26 +\num{4} & \texttt{Google Keep} & 174.263 \\
  27 +\num{3} & \texttt{Dropbox} & 160.939 \\
  28 +\num{2} & \texttt{ESPN SportsCenter} & 108.965 \\
  29 +\num{1} & \texttt{Bank of America} & 98.007 \\
  30 +\end{tabularx}
  31 +}
  32 +\caption{\small \textbf{Most and Least Energy-Consuming Apps.}}
  33 +\label{table-total}
  34 +\end{subtable}%
  35 +\begin{subtable}[t]{0.5\textwidth}
  36 +{\small
  37 +\begin{tabularx}{\columnwidth}{rrc}
  38 +\multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
  39 +\multicolumn{1}{c}{\normalsize{\textbf{App}}} &
  40 +\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} \\
  41 +\toprule
  42 +\num{1} & \texttt{Facebook Messenger} & 0.774 \\
  43 +\num{2} & \texttt{Google+} & 0.614 \\
  44 +\num{3} & \texttt{Super-Bright LED Flashlight} & 0.600 \\
  45 +\num{4} & \texttt{UB Parking} & 0.598 \\
  46 +\num{5} & \texttt{Android Music} & 0.446 \\
  47 +\num{6} & \texttt{Google Search} & 0.428 \\
  48 +\num{7} & \texttt{NFL Mobile} & 0.386 \\
  49 +\num{8} & \texttt{Pandora} & 0.326 \\
  50 +\num{9} & \texttt{Starbucks} & 0.282 \\
  51 +\num{10} & \texttt{Android News and Weather} & 0.254 \\
  52 +\bottomrule
  53 +\num{10} & \texttt{Chrome Browser} & 0.099 \\
  54 +\num{9} & \texttt{WhatsApp Messenger} & 0.095 \\
  55 +\num{8} & \texttt{Twitter} & 0.078 \\
  56 +\num{7} & \texttt{Yahoo Mail} & 0.077 \\
  57 +\num{6} & \texttt{Android Messaging} & 0.061 \\
  58 +\num{5} & \texttt{Skype} & 0.040 \\
  59 +\num{4} & \texttt{YouTube} & 0.036 \\
  60 +\num{3} & \texttt{ESPN SportsCenter} & 0.021 \\
  61 +\num{2} & \texttt{The Weather Channel} & 0.019 \\
  62 +\num{1} & \texttt{Bank of America} & 0.011 \\
  63 +\end{tabularx}
  64 +}
  65 +
  66 +\caption{\small \textbf{Fastest and Slowest Energy-Consuming Apps.}}
  67 +
  68 +\label{table-rate}
  69 +
  70 +\end{subtable}\\[0.1in]
  71 +\begin{subtable}[t]{0.5\textwidth}
  72 +{\small
  73 +\begin{tabularx}{\columnwidth}{rrr}
  74 +\multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
  75 +\multicolumn{1}{c}{\normalsize{\textbf{App Name}}} &
  76 +\multicolumn{1}{c}{\normalsize{\textbf{Efficiency}}} \\
  77 +\toprule
  78 +\num{1} & \texttt{Bank of America} & 83.717 \\
  79 +\num{2} & \texttt{The Weather Channel} & 49.861 \\
  80 +\num{3} & \texttt{Skype} & 23.779 \\
  81 +\num{4} & \texttt{YouTube} & 19.880 \\
  82 +\num{5} & \texttt{Android Messaging} & 12.933 \\
  83 +\num{6} & \texttt{Android Gallery} & 9.260 \\
  84 +\num{7} & \texttt{Android Calculator} & 9.189 \\
  85 +\num{8} & \texttt{Twitter} & 8.645 \\
  86 +\num{9} & \texttt{Chrome Browser} & 8.524 \\
  87 +\num{10} & & \\
  88 +\bottomrule
  89 +\num{10} & \texttt{Yahoo Mail} & 3.287 \\
  90 +\num{9} & \texttt{ESPN SportsCenter} & 3.184 \\
  91 +\num{8} & \texttt{Google Search} & 1.984 \\
  92 +\num{7} & \texttt{Android Music} & 1.972 \\
  93 +\num{6} & \texttt{Pandora} & 1.779 \\
  94 +\num{5} & \texttt{Super-Bright LED Flashlight} & 1.667 \\
  95 +\num{4} & \texttt{UB Parking} & 1.507 \\
  96 +\num{3} & \texttt{NFL Mobile} & 1.437 \\
  97 +\num{2} & \texttt{Google+} & 1.270 \\
  98 +\num{1} & \texttt{Facebook Messenger} & 1.199 \\
  99 +\end{tabularx}
  100 +}
  101 +
  102 +\caption{\small \textbf{Apps Sorted by Foreground Energy Efficiency.}}
  103 +
  104 +\label{table-foreground}
  105 +
  106 +\end{subtable}%
  107 +\begin{subtable}[t]{0.5\textwidth}
  108 +{\small
  109 +\begin{tabularx}{\columnwidth}{@{\extracolsep{\fill}}rrrr}
  110 +\multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
  111 +\multicolumn{1}{c}{\normalsize{\textbf{App Name}}} &
  112 +\multicolumn{1}{c}{\normalsize{\textbf{Value}}} \\
  113 +\toprule
  114 +\num{1} & \texttt{YouTube} & 18497.052 \\
  115 +\num{2} & \texttt{Candy Crush Saga} & 14051.369 \\
  116 +\num{3} & \texttt{Bank of America} & 12954.196 \\
  117 +\num{4} & \texttt{Dropbox} & 7063.746 \\
  118 +\num{5} & \texttt{Android Messaging} & 6555.140 \\
  119 +\num{6} & \texttt{Android Gallery} & 5773.902 \\
  120 +\num{7} & \texttt{Twitter} & 5610.394 \\
  121 +\num{8} & \texttt{Android Clock} & 5085.873 \\
  122 +\num{9} & \texttt{Yahoo Mail} & 5083.615 \\
  123 +\num{10} & & \\
  124 +\bottomrule
  125 +\num{10} & \texttt{NFL Mobile} & 1275.985 \\
  126 +\num{9} & \texttt{UB Parking} & 1071.529 \\
  127 +\num{8} & \texttt{Pandora} & 1049.971 \\
  128 +\num{7} & \texttt{Facebook Messenger} & 1012.536 \\
  129 +\num{6} & \texttt{Android News and Weather} & 990.386 \\
  130 +\num{5} & \texttt{Adobe Reader} & 985.680 \\
  131 +\num{4} & \texttt{Google+} & 898.589 \\
  132 +\num{3} & \texttt{Android Phone} & 748.077 \\
  133 +\num{2} & \texttt{Google Search} & 682.005 \\
  134 +\num{1} & \texttt{The Weather Channel} & 571.405 \\
  135 +\end{tabularx}
  136 +}
  137 +
  138 +\caption{\small \textbf{Apps Sorted by Content Energy Efficiency.}}
  139 +
  140 +\label{table-content}
  141 +\end{subtable}
  142 +
  143 +\caption{\small \textbf{Evaluating Components of a Value Measure.}
  144 + \PhoneLab{} data is used to weight overall app energy usage in a variety of
  145 +different ways. Omitted results are caused by Android reporting energy
  146 +consumption for non-apps such as the Android System.}
  147 +
  148 +\label{table-results}
  149 +
  150 +\end{table*}
figures/tables/tableRATE.tex
1 \begin{table}[t] 1 \begin{table}[t]
2 {\small 2 {\small
3 -\begin{tabularx}{\columnwidth}{Xrr} 3 +\begin{tabularx}{\columnwidth}{rXr}
4 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} & 4 \multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
5 -\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} &  
6 -\multicolumn{1}{c}{\normalsize{\textbf{Value}}} \\ 5 +\multicolumn{1}{c}{\normalsize{\textbf{App}}} &
  6 +\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} \\
7 \toprule 7 \toprule
8 \num{1} & \texttt{Facebook Messenger} & 0.774 \\ 8 \num{1} & \texttt{Facebook Messenger} & 0.774 \\
9 \num{2} & \texttt{Google+} & 0.614 \\ 9 \num{2} & \texttt{Google+} & 0.614 \\
figures/tables/tableRATE.tex~ 0 โ†’ 100644
  1 +\begin{table}[t]
  2 +{\small
  3 +\begin{tabularx}{\columnwidth}{rXr}
  4 +\multicolumn{1}{c}{\normalsize{\textbf{Rank}}} &
  5 +\multicolumn{1}{c}{\normalsize{\textbf{App}}} &
  6 +\multicolumn{1}{c}{\normalsize{\textbf{Consumption Rate (A)}}} \\
  7 +\toprule
  8 +\num{1} & \texttt{Facebook Messenger} & 0.774 \\
  9 +\num{2} & \texttt{Google+} & 0.614 \\
  10 +\num{3} & \texttt{Super-Bright LED Flashlight} & 0.600 \\
  11 +\num{4} & \texttt{UB Parking} & 0.598 \\
  12 +\num{5} & \texttt{Android Music} & 0.446 \\
  13 +\num{6} & \texttt{Google Search} & 0.428 \\
  14 +\num{7} & \texttt{NFL Mobile} & 0.386 \\
  15 +\num{8} & \texttt{Pandora} & 0.326 \\
  16 +\num{9} & \texttt{Starbucks} & 0.282 \\
  17 +\num{10} & \texttt{Android News and Weather} & 0.254 \\
  18 +\bottomrule
  19 +\bottomrule
  20 +\num{9} & \texttt{WhatsApp Messenger} & 0.095 \\
  21 +\num{8} & \texttt{Twitter} & 0.078 \\
  22 +\num{7} & \texttt{Yahoo Mail} & 0.077 \\
  23 +\num{6} & \texttt{Android Messaging} & 0.061 \\
  24 +\num{5} & \texttt{Skype} & 0.040 \\
  25 +\num{4} & \texttt{YouTube} & 0.036 \\
  26 +\num{3} & \texttt{ESPN SportsCenter} & 0.021 \\
  27 +\num{2} & \texttt{The Weather Channel} & 0.019 \\
  28 +\num{1} & \texttt{Bank of America} & 0.011 \\
  29 +\end{tabularx}
  30 +}
  31 +
  32 +\caption{\small \textbf{Fastest and slowest energy-consuming apps.}}
  33 +
  34 +\label{table-rate}
  35 +
  36 +\end{table}
introduction.tex
@@ -41,8 +41,8 @@ of apps in order to evaluate two video conferencing tools, web browsers, or @@ -41,8 +41,8 @@ of apps in order to evaluate two video conferencing tools, web browsers, or
41 email clients. Developers can determine whether a new feature delivers value 41 email clients. Developers can determine whether a new feature delivers value
42 more or less efficiently than the rest of their app and better understand the 42 more or less efficiently than the rest of their app and better understand the
43 differences in energy consumption across different users. Measuring value 43 differences in energy consumption across different users. Measuring value
44 -allows a rigorous definition of an \textit{energy virus} as \textit{an app that  
45 -delivers little or no value per joule}, and for systems to reward efficient 44 +allows a rigorous definition of an \textit{energy virus} as an app that
  45 +delivers little or no value per joule, and for systems to reward efficient
46 apps by prioritizing limited resources based on app value or energy 46 apps by prioritizing limited resources based on app value or energy
47 efficiency. After all the progress we have made in computing the 47 efficiency. After all the progress we have made in computing the
48 denominator---energy consumption---we believe that the search for the missing 48 denominator---energy consumption---we believe that the search for the missing
metric.tex
@@ -33,7 +33,7 @@ with complementary value measure components that offset the differences @@ -33,7 +33,7 @@ with complementary value measure components that offset the differences
33 between high-interaction and low-interaction apps. This approach also fails 33 between high-interaction and low-interaction apps. This approach also fails
34 in the case where apps deploy confusing or unnecessary interfaces that 34 in the case where apps deploy confusing or unnecessary interfaces that
35 require a great deal of unnecessary interaction to accomplish simple tasks. 35 require a great deal of unnecessary interaction to accomplish simple tasks.
36 -Clearly such apps should not be rewarded. 36 +Clearly, such apps should not be rewarded.
37 37
38 \subsection{Notification Click-Through Rates} 38 \subsection{Notification Click-Through Rates}
39 39
@@ -61,7 +61,7 @@ not consumed did not need to be retrieved. @@ -61,7 +61,7 @@ not consumed did not need to be retrieved.
61 61
62 However, in some cases apps may do an effective job at summarizing the event 62 However, in some cases apps may do an effective job at summarizing the event
63 within the notification itself, providing no need for the user to bring the 63 within the notification itself, providing no need for the user to bring the
64 -app to the foreground. Clearly such apps should not be penalized. 64 +app to the foreground. Clearly, such apps should not be penalized.
65 65
66 \subsection{Content Delivery} 66 \subsection{Content Delivery}
67 67
@@ -88,7 +88,8 @@ large amount of video content to their users per joule. @@ -88,7 +88,8 @@ large amount of video content to their users per joule.
88 presented to the user and efficiency is determined by the accelerometer rate 88 presented to the user and efficiency is determined by the accelerometer rate
89 and any post-processing required to produce an accurate estimate. Value is 89 and any post-processing required to produce an accurate estimate. Value is
90 measured as the ability to maintain the step count and efficient pedometers 90 measured as the ability to maintain the step count and efficient pedometers
91 -can compute accurate values while consuming small amounts of energy. 91 +can achieve more accuracy in computing values per joule.
  92 +%can compute accurate values while consuming small amounts of energy.
92 93
93 \end{itemize} 94 \end{itemize}
94 95
results.tex
@@ -25,7 +25,7 @@ package to record energy consumption at each app transition. This allows energy @@ -25,7 +25,7 @@ package to record energy consumption at each app transition. This allows energy
25 consumption by components such as the screen to be accurately attributed to 25 consumption by components such as the screen to be accurately attributed to
26 the foreground app, a feature that Android's internal battery monitoring 26 the foreground app, a feature that Android's internal battery monitoring
27 component (the Fuel Gauge) lacks. Changes were distributed to \PhoneLab{} 27 component (the Fuel Gauge) lacks. Changes were distributed to \PhoneLab{}
28 -participants in November, 2013, via an over-the-air (OTA) platform update. 28 +participants in November 2013 via an over-the-air (OTA) platform update.
29 The resulting 2~month dataset of 67~GB of compressed log files represents 29 The resulting 2~month dataset of 67~GB of compressed log files represents
30 \num{6806} user days during which \num{1328}~apps were started \num{277785} 30 \num{6806} user days during which \num{1328}~apps were started \num{277785}
31 times, and used for a total of \num{15224} hours of active use by 31 times, and used for a total of \num{15224} hours of active use by
@@ -37,17 +37,18 @@ consumed by each app. Next, we formulate a simple measure of content @@ -37,17 +37,18 @@ consumed by each app. Next, we formulate a simple measure of content
37 delivery by measuring usage of the screen and audio output devices and test 37 delivery by measuring usage of the screen and audio output devices and test
38 it through a survey completed by 47~experiment participants. Unfortunately, 38 it through a survey completed by 47~experiment participants. Unfortunately,
39 our results are inconclusive and open to several possible interpretations 39 our results are inconclusive and open to several possible interpretations
40 -which we discuss. We present our results in tabular format where for each measure we  
41 -rank 10 best performing and 10 worst performing apps in desending order. 40 +which we discuss.
  41 +We present our results in tabular format where for each measure we
  42 +rank 10 best performing and 10 worst performing apps in descending order.
42 43
43 -\newpage 44 +%\newpage
44 45
45 \subsection{Total Energy} 46 \subsection{Total Energy}
46 47
47 \input{./figures/tables/tableALL.tex} 48 \input{./figures/tables/tableALL.tex}
48 49
49 Clearly, ranking apps by total energy consumption computed by adding all 50 Clearly, ranking apps by total energy consumption computed by adding all
50 -foreground and background energy consumptions over the entire study says 51 +foreground and background energy consumption over the entire study says
51 much more about app popularity than it does about anything else. 52 much more about app popularity than it does about anything else.
52 Table~\ref{table-total} shows the top and bottom energy-consuming apps over 53 Table~\ref{table-total} shows the top and bottom energy-consuming apps over
53 the entire study. As expected, popular apps such as the Android Browser, 54 the entire study. As expected, popular apps such as the Android Browser,
results.tex~ deleted
1 -\section{Results}  
2 -\label{sec-results}  
3 -  
4 -To examine the potential components of a value measure further, we utilize a  
5 -large dataset of energy consumption measurements collected by an IRB-approved  
6 -experiment run on the \PhoneLab{} testbed. \PhoneLab{} is a public smartphone  
7 -platform testbed located at the University at  
8 -Buffalo~\cite{phonelab-sensemine13}. 220~students, faculty, and staff carry  
9 -instrumented Android Nexus~5 smartphones and receive subsidized service in  
10 -return for willingness to participate in experiments. \PhoneLab{} provides  
11 -access to a representative group of participants balanced between genders and  
12 -across a wide variety of age brackets, making our results more  
13 -representative.  
14 -  
15 -Understanding fine-grained energy consumption dynamics required more  
16 -information than Android normally exposes to apps. In addition, to explore  
17 -components of our value measure we also wanted to capture information about  
18 -app usage---including foreground and background time and use of the display  
19 -and audio interface---that was not possible to measure on unmodified Android  
20 -devices. So to collect our dataset we took advantage of \PhoneLab{}'s ability  
21 -to modify the Android platform itself. We instrumented the  
22 -\texttt{SurfaceFlinger} and \texttt{AudioFlinger} components in the Android platform  
23 -to record usage of the screen and audio, and altered the ActivityManagerService  
24 -package to record energy consumption at each app transition. This allows energy  
25 -consumption by components such as the screen to be accurately attributed to  
26 -the foreground app, a feature that Android's internal battery monitoring  
27 -component (the Fuel Gauge) lacks. Changes were distributed to \PhoneLab{}  
28 -participants in November, 2013, via an over-the-air (OTA) platform update.  
29 -The resulting 2~month dataset of 67~GB of compressed log files represents  
30 -\num{6806} user days during which \num{1328}~apps were started \num{277785}  
31 -times, and used for a total of \num{15224} hours of active use by  
32 -107~\PhoneLab{} participants.  
33 -  
34 -Our analysis begins by investigating several components of a possible value  
35 -measure and shows the effect of using each to weight the overall energy  
36 -consumed by each app. Next, we formulate a simple measure of content  
37 -delivery by measuring usage of the screen and audio output devices and test  
38 -it through a survey completed by 47~experiment participants. Unfortunately,  
39 -our results are inconclusive and open to several possible interpretations  
40 -which we discuss.  
41 -  
42 -\newpage  
43 -  
44 -\subsection{Total Energy}  
45 -  
46 -\input{./figures/tables/tableALL.tex}  
47 -  
48 -Clearly, ranking apps by total energy consumption computed by adding all  
49 -foreground and background energy consumptions over the entire study says  
50 -much more about app popularity than it does about anything else.  
51 -Table~\ref{table-total} shows the top and bottom energy-consuming apps over  
52 -the entire study. As expected, popular apps such as the Android Browser,  
53 -Facebook, and the Android Phone component consume the most energy, while the  
54 -list of low consumers is dominated by apps with few installs. This table does  
55 -serve, however, to identify the popular apps in use by \PhoneLab{}  
56 -participants, and as a point of comparison for the remainder of our results.  
57 -  
58 -\subsection{Power}  
59 -  
60 -Computing each app's power consumption by scaling their total energy usage  
61 -against the total time they were running, either in the background or  
62 -foreground, reveals more information, as shown in Table~\ref{table-rate}. Our  
63 -results identify Facebook Messenger, Google+, and the Super-Bright LED  
64 -Flashlight as apps that rapidly-consume energy, while the Bank of America and  
65 -Weather Channel apps consume energy slowly. Differences between apps in  
66 -similar categories may begin to identify apps with problematic energy  
67 -consumption, such as contrasting the high energy usage of Facebook Messenger  
68 -with other messaging clients such as WhatsApp, Twitter, and Android  
69 -Messaging.  
70 -  
71 -\subsection{Foreground Energy Efficiency}  
72 -  
73 -Isolating the foreground component of execution time provides a better  
74 -measure of value, since it ignores the time that users spend ignoring apps.  
75 -Table~\ref{table-foreground} shows a measure of energy efficiency computed by  
76 -%utilizing foreground time alone as our value measure.  
77 -dividing total foreground energy consumption by total foreground time of an  
78 -app. Some surprising changes  
79 -from the power results can be seen. A number of apps have remained in their former  
80 -categories: Bank of America, which was identified as a low-power app, is also  
81 -a highly-efficient app when using foreground time as the value measure; and  
82 -Facebook Messenger, which was identified as a high-power app, is also marked  
83 -as inefficient. Other apps, however, have switched categories. ESPN  
84 -Sportscenter and Yahoo Mail do not consume much power, but also don't spend  
85 -much time in the foreground; interestingly, none of the high-power apps  
86 -looked better when their foreground usage was considered.  
87 -  
88 -\subsection{Content Energy Efficiency}  
89 -  
90 -Finally, we use the data we collected by instrumenting the  
91 -\texttt{SurfaceFlinger} and \texttt{AudioFlinger} components to compute a  
92 -simple measure of content delivery. We measure the audio and video frame  
93 -rates and combine them into a single measure by using bit-rates corresponding  
94 -to a 30~fps YouTube-encoded video and 128~kbps two-channel audio, with the  
95 -weights representing the fact that a single frame of video contains much more  
96 -content than a single sample of audio. We use this combined metric as the  
97 -value measure and again use it to weight the energy consumption of each app,  
98 -with the results shown in Table~\ref{table-content}.  
99 -  
100 -Comparing with the foreground energy efficiency again shows several  
101 -interesting changes. Yahoo Mail, which foreground energy efficiency marked as  
102 -inefficient, looks more efficient when content delivery is considered. While  
103 -it is possible that one \PhoneLab{} participant uses it to read email very  
104 -quickly, it may be more likely that it uses a ``spinner'' or other fancy UI  
105 -elements that generate artificially high frame rates without delivering much  
106 -information. The inability to distinguish between meaningless and meaningful  
107 -video frame content is a significant weakness of this simple approach.  
108 -YouTube and Candy Crush Saga both earn high marks, which is encouraging given  
109 -that they are very different apps but also might be a result of overweighting  
110 -screen refreshes. The Android Clock is also an unsurprising result, as it  
111 -requires almost no energy to generate a relatively-large number of screen  
112 -redraws in timer and stopwatch mode.  
113 -  
114 -\subsection{Survey Results and Discussion}  
115 -  
116 -\begin{figure*}[t]  
117 -\centering  
118 -\includegraphics[width=\textwidth]{./figures/survey.pdf}  
119 -  
120 -\caption{\small \textbf{Survey Results.} The height of each bar demonstrates how  
121 -many of the suggested apps the user is willing to remove for better battery  
122 -life, with suggestions based on overall usage or our new content-delivery  
123 -efficiency measure. Our new measure does not convincingly out-perform the  
124 -straw man.}  
125 -  
126 -\label{fig-survey}  
127 -  
128 -\end{figure*}  
129 -  
130 -To continue the evaluation of our simple content-based value measure, we  
131 -prepared a survey for the 107~\PhoneLab{} participants who contributed data  
132 -to our experiment. Our goal was to determine if users would be more willing  
133 -to remove inefficient apps, as defined using our content-based measure. As a  
134 -baseline, we also asked users about the apps that consumed the most energy.  
135 -We used each participants data to generate a custom survey containing  
136 -questions about 9 apps: the 3 least efficient apps as computed by our  
137 -content-based value measure, the 3 apps that used the most energy on their  
138 -smartphone during the experiment, and 3 apps chosen at random. For each we  
139 -asked them a simple question: ``If it would improve your battery life, would  
140 -you uninstall or stop using this app?'' To compute an aggregate score for  
141 -both the content-based and usage based measures, we give each measure 1~point  
142 -for a ``Yes'', 0.5~points for a ``Maybe'' and 0~points for a ``No''.  
143 -47~participants completed the survey, and the results are shown in  
144 -Figure~\ref{fig-survey}. For each user, if the score of one measure is higher  
145 -than the other, it is considered a ``win'' for the former.  
146 -  
147 -Overall the results are inconclusive, with the content-delivery measure not  
148 -clearly outperforming the straw-man usage measure at predicting which apps  
149 -each user would be willing to remove to save battery life. Given the crude  
150 -nature of our metric, this is not particularly surprising, and can be  
151 -interpreted as a sign that we need a more sophisticated value measure  
152 -incorporating more of the potential inputs we have previously discussed.  
153 -However, on one level the results are very encouraging: most users were  
154 -willing to consider removing one or more apps if that app would improve their  
155 -battery lifetime. Clearly, users are making this decision based on some idea  
156 -of each app's value---the challenge is to replicate their choices using the  
157 -information we have available to us.