
Mobile Computing: Challenges and Opportunities for Autonomy and Feedback Ole J. Mengshoel Bob Iannucci Abe Ishihara Carnegie Mellon University Carnegie Mellon University Carnegie Mellon University Moffett Field, CA 94035 Moffett Field, CA 94035 Moffett Field, CA 94035 [email protected] [email protected] [email protected] Abstract vidual users’ experiences can be improved by opening new application programming interfaces (APIs) within Mobile devices have evolved to become computing plat- the mobile system and utilizing feedback techniques to forms more similar to desktops and workstations than the optimize system performance. A pragmatic approach, cell phones and handsets of yesteryear. Unfortunately, which we follow and refine, is to measure and adapt [11]. today’s mobile infrastructures are mirrors of the wired We imagine creating tools to (i) measure power con- past. Devices, apps, and networks impact one another, sumption for computation and communication on-the-fly but a systematic approach for allowing them to cooper- and (ii) enable migration of pieces of apps to or from ate is currently missing. We propose an approach that the cloud, informed by the measurements, using novel seeks to open key interfaces and to apply feedback and feedback and autonomic computing techniques. Our pro- autonomic computing to improve both user experience posed approach, outlined in Section 3, offers a capabil- and mobile system dynamics. ity to learn the power implications of an app’s structure– across many instances concurrently–and to dynamically 1 Background adapt it at run time. Our approach builds on previous research includ- Mobile computing today represents a discontinuous ing the following. Related to (i), power consumption transformation of the marketplace from an embedded and battery lifetime for the Openmoko Neo Freerunner computing perspective to a true platform computing per- smartphone, under different usage scenarios, has been spective. This single fact, which was in many ways pre- investigated [3]. The power consumption of a G1 An- dictable, has re-shaped the mobile industry and has led droid phone has been recorded and analyzed for a broad to a shift in fortunes among mobile equipment makers. range of users and user activities [22]. It has been es- Those who entered the game early focused on deliv- tablished that it is sufficient to use the smartphone’s bat- ering voice services. Mobile computing per se was the tery voltage sensors and knowledge about the battery dis- stepchild of voice, the presumed “killer app.” A sec- charge behavior to accurately estimate power consump- ond wave of mobile computing pioneers took the discon- tion [26]. Related to (ii), the potential for speed-up and tinuously different platform approach, thinking of com- energy saving enabled by offloading computation from a puting as primary and communications as a peripheral smartphone to the cloud, using aspect-oriented program- service–consistent with the way networking interfaces ming, is clear [4]. Similar results have been achieved for and “modems” were viewed in the desktop world. the mobile Web, based on measured energy usage across The result of this second wave was hundreds of different Web sites and different Web page elements [24]. thousands of developers flocking to these new, more A distinguishing factor of our proposed approach is the platform-like mobile devices. We argue that this plat- use of feedback control theory, which has been applied to form thinking compelled the mobile systems landscape computing and computer networks, including control of to change, invalidating longstanding design assumptions HTTP servers [1, 6, 7], email servers [15], quality of ser- and bringing new challenges. We observe that the cur- vice assurance [25], internet traffic control [9, 12], and rent mobile systems architectural approach – inherited load balancing [10]. from the past – emphasizes strict layering and separation In this paper, we attempt to characterize how platform of function that hides key state information. thinking has changed mobile systems, introducing new It is our contention that the overall system and indi- challenges (Section 2). We select a subset of the chal- Challenge Description is increasingly taxing the computing power of mobile Robustness Wireless characteristics are inherently variable phones, leading to rapid evolution of on-phone comput- Responsiveness Growing demand implies growing load Power Physics imposes hard limits ing performance. But this has its physical limits. It is App Development Distributed computing introduces complexity a fact that mobile phone, as we know them, must oper- ate at or below the so-called “three watt limit” [14] – the Table 1: Some of the challenges inherent in mobile com- power challenge. Pushing more than three watts through puting systems. the surface area of a typical phone will make it, quite simply, too hot to handle. lenges for which a systems-level approach is particularly Addressing this issue and others, many mobile apps applicable and sketch a research plan (Section 3). today are made up of developer’s code that provides some unique functionality built on top of one or a number of third-party libraries, each of which is tied to a cloud 2 Impact of Platform Thinking service (e.g., Dropbox, AdMob, game engines). Mobile apps will, increasingly, be divided between on-device Early mobile systems simply made voice calls. The parts and cloud-supplied parts. However, IP packets that systems were a co-design of mobile phones, radio ac- travel mobile-to-cloud or mobile-to-mobile have to tran- cess networks (RANs), mobile switching equipment, and sit extensive wireless edge and core networks to reach associated billing and management subsystems. But their destinations. Latency is often a problem. with the evolution to platform thinking, new challenges It is the rare app developer who has intuition about emerged. Powerful computing resources in the phones how to statically divide an app for power optimization. gave birth to mobile apps, and IP-to-the-phone opened Depending on how the app is partitioned (between on- the world of connected mobile computing, with classic device and in-cloud) and the way it is used, the power- mobile networks in the middle. We turn our attention to cost of computing and the power-cost of communication the key challenges of mobile systems (see Table 1); the will change, possibly drastically. While an analytic ap- 1 state of mobile infrastructure; and the evolution of mo- proach to partitioning and power optimization would be bile devices and applications. ideal, the inherently unknown nature of the program’s input-dependent behavior makes this unrealistic. These 2.1 Mobile Infrastructure facts, coupled with well-known issues of distributed pro- gramming make up the app development challenge. In traditional wired networks, the physical medium is generally assumed reliable and the devices to which it connects are assumed essentially fixed. But in wireless 3 Systems-Level Approach networks, the physical medium is generally dynamic, variable in reliability, and the devices can and do move, We propose a new model for mobile systems that takes giving rise to the fundamental robustness challenge. two steps beyond current systems. First, we propose that With the growth in mobile consumption of streaming app, network and cloud elements expose key bits of state media, network responsiveness (a function of capacity, and intent with one another. Second, we propose the cre- load, and engineered-in latencies) has remained a chal- ation of a set of feedback and autonomic processes that lenge. Just as in wired networks, balancing the compet- seek to optimize network behavior and user experience ing needs of different traffic flows against fixed resources given the information exposed. Space prevents a full ex- has revived interest in mechanisms to externally control ploration of these ideas against the listed challenges, so an otherwise static network (e.g., SDN) as well as poli- we explore these two in some depth: cies that can be employed to enforce some notion of ra- tional resource allocation. Real-time resource allocation • Apps expose their desire for network resource al- is a necessity, but current operator practice (e.g., pricing location (e.g., bandwidth, maximum latency). The plans for data) treats it as a static problem. network gathers these and periodically conducts auctions to set prices and priorities. The feedback loop is closed when the apps receive the results of 2.2 Mobile Devices and Applications the auction and modify their requests accordingly. Consequently, the network operator maximizes rev- Today, mobile apps rival their desktop counterparts in enue based on the competing requests. complexity, visual richness, and real-time interactiv- ity. The competitive nature of mobile app marketplaces • Apps and networks together participate in power 1We use the term mobile infrastructure to mean the RAN, switch- management. With instances of the same app run- ing, and the IP cloud behind it. ning on millions of devices, coupled with explicitly- 2 exposed meta-data related to the state of the wire- 3.2 Power Management less connections, an opportunity to learn network- Power management is perhaps the most pressing issue dependent power behavior emerges. Correlating in mobile app creation and mobility computing. Power power usage with, say, signal strength across many usage can be measured across different, concurrent in- app instances provides the means to adapt pro- stances of an app, and these measurements can then gram behavior. In a video streaming application, be correlated with network measurements and models a weak signal could trigger the choice of a codec [22, 3, 26]. Machine learning and system identification that would minimize retransmissions, minimizing can be then be done and the resulting combined model wasted power. used for feedback control for that app. In this case, the setpoint r(k) would be power consumption and the con- 3.1 Resource Allocation trol actions would be to dynamically migrate parts of an app between the device and the cloud in order to meet To ensure the health of large-scale mobile systems, it is power consumption requirements.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages5 Page
-
File Size-