The Pennsylvania State University The Graduate School ENERGY OPTIMIZATION FOR WIRELESS COMMUNICATIONS ON MOBILE DEVICES A Dissertation in Computer Science and Engineering by Yi Yang c 2018 Yi Yang Submitted in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy May 2018 The dissertation of Yi Yang was reviewed and approved∗ by the following: Guohong Cao Professor of Computer Science and Engineering Dissertation Advisor, Chair of Committee George Kesidis Professor of Computer Science and Engineering Professor of Electrical Engineering Sencun Zhu Associate Professor of Computer Science and Engineering Dinghao Wu Associate Professor of Information Sciences and Technology Mahmut Taylan Kandemir Professor of Computer Science and Engineering Graduate Program Chair of Computer Science and Engineering ∗Signatures are on file in the Graduate School. Abstract Mobile devices such as smartphones and smartwatches are becoming increasingly popular accompanied with a wide range of apps. Those apps usually require data communications through wireless interfaces, which will drain the battery quickly. Thus, it is of great value to characterize the energy consumption of wireless com- munications and propose energy saving solutions. The specific goal of this dissertation is to optimize the energy consumption of wireless communications on mobile devices. Specifically, this dissertation has four foci. First, we propose network quality aware prefetching algorithms to save energy for in-app advertising. The cellular interface on smartphones continues to consume a large amount of energy after a data transmission (referred to as the long tail problem). Then periodically fetching ads through the cellular network may lead to significant battery drain on smartphones. To reduce the tail energy, we can predict the number of ads needed in the future and then prefetch those ads together. However, prefetching unnecessary ads may waste both energy and cellu- lar bandwidth, and this problem becomes worse when the network quality is poor. To solve this problem, we propose network quality aware prefetching algorithms. We first design a prediction algorithm which generates a set of prefetching options with various probabilities, and then we propose two prefetching algorithms to select the best prefetching option by considering the effect of network quality. Second, we generalize the prefetching problem, where the goal is to find a prefetching schedule that minimizes the energy consumption of the data transmissions under the current network condition. To solve the formulated nonlinear optimization problem, we first propose a greedy algorithm, and then propose a discrete algorithm with better performance. Third, we consider the context information when offloading tasks for wearable devices. Considering the low energy consumption of the Bluetooth data transmissions, wearable devices usually offload computationally intensive tasks to the connected smartphone via Bluetooth. However, existing smartphones cannot iii properly allocate CPU resources to these offloaded tasks due to lack of context information, resulting in either energy waste on smartphones or high interaction latency on wearable devices. To address this issue, we propose a context-aware task offloading framework, in which offloaded tasks can be properly executed on the smartphone or further offloaded to the cloud based on their context, aiming to achieve a balance between good user experience on wearable devices and en- ergy saving on the smartphone. Finally, we characterize and optimize Bluetooth energy consumption on smartwatches. Bluetooth is used for data communications between smartwatches and smartphones, but its energy consumption has been rarely studied. To solve the problem, we first establish the Bluetooth power model and then we perform an in-depth investigation of the background data transfers on smartwatches. We found that those data transfers consume a large amount of energy due to the energy inefficiency attributed to the adverse interaction be- tween the data transfer pattern (i.e., frequently transferring small data) and the Bluetooth energy characteristics (i.e., the tail effect). Based on these findings, we propose four techniques to save Bluetooth energy for smartwatches. iv Table of Contents List of Figures x List of Tables xiv Acknowledgments xv Chapter 1 Introduction 1 1.1 Motivation . 2 1.2 Challenges . 3 1.3 Focus of This Dissertation . 5 1.3.1 Energy-Aware Advertising through Quality-Aware Prefetch- ing on Smartphones . 5 1.3.2 Prefetch-Based Energy Optimization on Smartphones . 6 1.3.3 Context-Aware Task Offloading for Wearable Devices . 6 1.3.4 Characterizing and Optimizing Background Data Transfers on Smartwatches . 7 1.4 Organization . 8 Chapter 2 Energy-Aware Advertising through Quality-Aware Prefetching on Smartphones 9 2.1 Introduction . 9 2.2 Related Work . 11 2.3 Preliminaries . 13 2.3.1 Background: In-app Advertising . 13 2.3.1.1 In-app Ad Ecosystem . 13 v 2.3.1.2 In-app Ad Format and Size . 13 2.3.1.3 What Ads to Prefetch . 14 2.3.2 Design Considerations and Basic Ideas . 14 2.4 Network Quality Aware Prefetching . 15 2.4.1 Prediction Based on a Series of Probabilities . 15 2.4.1.1 Feature Selection . 17 2.4.1.2 App Usage Record . 17 2.4.1.3 Partitioning App Usage Records into Clusters . 19 2.4.1.4 Classifying Current App Usage to a Cluster . 19 2.4.1.5 Generating Prediction Results for a Cluster . 20 2.4.2 Prefetching Algorithms . 20 2.4.2.1 Energy Model . 21 2.4.2.2 Network Quality . 22 2.4.2.3 Energy-aware Prefetching Algorithm . 23 2.4.2.4 Energy-and-data Aware Prefetching Algorithm . 25 2.5 Performance Evaluation . 26 2.5.1 Evaluation Setup . 27 2.5.1.1 App Usage Trace . 27 2.5.1.2 Measuring Network Quality . 27 2.5.2 Evaluation Result (Measurement-based Network Quality) . 29 2.6 Testbed Development and Evaluation . 30 2.6.1 Testbed Development . 31 2.6.2 Experimental Results . 31 2.7 Conclusion . 32 Chapter 3 Prefetch-Based Energy Optimization on Smartphones 33 3.1 Introduction . 33 3.2 Related Work . 35 3.3 Preliminaries . 36 3.3.1 Energy Model . 36 3.3.2 Motivations . 39 3.4 Prefetch-Based Energy Optimization . 41 3.4.1 Problem Formulation . 41 3.4.2 Greedy Algorithm . 42 3.4.3 Discrete Algorithm . 43 3.4.3.1 Value of the segment size A . 45 3.4.4 Greedy Algorithm vs Discrete Algorithm . 46 3.4.5 Discussions . 46 3.5 Performance Evaluations: In-app Advertising . 47 vi 3.5.1 In-app Advertising . 47 3.5.2 Ad Prefetching Algorithm . 48 3.5.3 App Usage and Throughput Traces . 48 3.5.4 Parameter Setup and Algorithm Training . 49 3.5.5 Trace-Driven Simulations . 50 3.5.6 Testbed Development and Evaluation . 51 3.6 Performance Evaluations: Mobile Video Streaming . 53 3.6.1 Mobile Video Streaming . 53 3.6.2 Mobile Video Streaming Algorithms . 53 3.6.3 Video Viewing Traces . 54 3.6.4 Trace-Driven Simulations . 55 3.6.4.1 Energy Consumption . 55 3.6.4.2 Data Wastage . 57 3.6.5 Testbed Development and Evaluation . 58 3.6.5.1 Parameter Setup . 59 3.6.5.2 Evaluation Results . 59 3.6.5.3 Compatibility with DASH . 61 3.7 Conclusions . 61 Chapter 4 Context-Aware Task Offloading for Wearable Devices 63 4.1 Introduction . 63 4.2 Preliminaries . 65 4.2.1 Task Execution in Android . 66 4.2.2 big.LITTLE Architecture on Smartphones . 67 4.2.3 big.LITTLE Support in Android . 68 4.3 The Motivation for Context-Aware Task Offloading . 68 4.4 Context-Aware Task Offloading (CATO) . 70 4.4.1 CATO Overview . 70 4.4.2 Client and Server Proxies . 71 4.4.3 Profiler . 72 4.4.3.1 CPU Profiling . 72 4.4.3.2 Network Profiling . 73 4.4.4 Solver . 74 4.4.4.1 Estimating Latency and Energy Cost . 74 4.4.4.2 Offload Decision . 76 4.5 Implementation . 77 4.5.1 CATO API . 78 4.5.1.1 Preparing a Task . 78 4.5.1.2 Offloading a Task . 78 vii 4.5.2 Applications . 78 4.5.2.1 Speech Recognition . 78 4.5.2.2 Smart Alarm . 79 4.6 Performance Evaluation . 79 4.6.1 Experimental Setup . 80 4.6.2 Speech Recognition . 82 4.6.3 Smart Alarm . 83 4.6.4 CATO Overhead . 83 4.7 Related Work . 84 4.8 Conclusion . 85 Chapter 5 Characterizing and Optimizing Background Data Transfers on Smartwatches 86 5.1 Introduction . 86 5.2 Related Work . 88 5.3 Preliminaries . 89 5.3.1 Bluetooth Overview . 90 5.3.2 Bluetooth Modes . 91 5.3.3 Bluetooth on Android Smartwatches . 92 5.4 Bluetooth Power Model . 93 5.4.1 Methodology . 93 5.4.2 Power Model . 94 5.4.3 Model Validation . 96 5.5 Background Data Transfers on Smartwatches . 97 5.5.1 Packet Traces . 97 5.5.2 Origins of Background Data Transfers . 97 5.5.3 Energy Impact . 99 5.5.3.1 Energy breakdown for each application . 100 5.5.3.2 Total energy impact . 100 5.6 Energy Optimizing Techniques . 102 5.6.1 Fast Dormancy . 102 5.6.2 Phone Initiated Polling . 103 5.6.3 Two-stage Sensor Processing . ..
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages139 Page
-
File Size-