Results 1 - 10
of
23
Towards Wearable Cognitive Assistance
, 2013
"... We describe the architecture and prototype implementation of an assistive system based on Google Glass devices for users in cognitive decline. It combines the first-person image capture and sensing capabilities of Glass with cloud processing to perform real-time scene interpretation. The system arch ..."
Abstract
-
Cited by 15 (1 self)
- Add to MetaCart
(Show Context)
We describe the architecture and prototype implementation of an assistive system based on Google Glass devices for users in cognitive decline. It combines the first-person image capture and sensing capabilities of Glass with cloud processing to perform real-time scene interpretation. The system architecture is multi-tiered. It offers tight end-to-end latency bounds on compute-intensive operations, while addressing concerns such as limited battery capacity and limited processing capability of wearable devices. The system gracefully degrades services in the face of network failures and unavailability of distant architectural tiers.
Give in to Procrastination and Stop Prefetching
"... Abstract – Generations of computer programmers are taught to prefetch network objects in computer science classes. In practice, prefetching can be harmful to the user’s wallet when she is on a limited or pay-per-byte cellular data plan. Many popular, professionally-written smartphone apps today pref ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
(Show Context)
Abstract – Generations of computer programmers are taught to prefetch network objects in computer science classes. In practice, prefetching can be harmful to the user’s wallet when she is on a limited or pay-per-byte cellular data plan. Many popular, professionally-written smartphone apps today prefetch large amounts of network data that the typical user may never use. We present Procrastinator, which automatically decides when to fetch each network object that an app requests. This decision is made based on whether the user is on Wi-Fi or cellular, how many bytes are remaining on the user’s data plan, and whether the object is needed at the present time. Procrastinator does not require developer effort, nor app source code, nor OS changes – it modifies the app binary to trap specific system calls and inject custom code. Our system can achieve as little as no savings to 4X savings in bytes transferred, depending on the user and the app. In theory, we can achieve 17X savings, but we need to overcome additional technical challenges.
Rio: A System Solution for Sharing I/O between Mobile Systems
"... Mobile systems are equipped with a diverse collection of I/O devices, including cameras, microphones, sensors, and modems. There exist many novel use cases for allowing an application on one mobile system to utilize I/O devices from another. This paper presents Rio, an I/O sharing solution that supp ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
(Show Context)
Mobile systems are equipped with a diverse collection of I/O devices, including cameras, microphones, sensors, and modems. There exist many novel use cases for allowing an application on one mobile system to utilize I/O devices from another. This paper presents Rio, an I/O sharing solution that supports unmodified applications and exposes all the functionality of an I/O device for sharing. Rio’s design is common to many classes of I/O devices, thus significantly reducing the engineering effort to support new I/O devices. Our implementation of Rio on Android consists of about 7100 total lines of code and supports four I/O classes with fewer than 500 class-specific lines of code. Rio also supports I/O sharing between mobile systems of different form factors, including smartphones and tablets. We show that Rio achieves performance close to that of local I/O for audio devices, sensors, and modem, but suffers noticeable performance degradation for camera due to network throughput limitations between the two systems, which is likely to be alleviated by emerging wireless standards.
Mantis: Automatic Performance Prediction for Smartphone Applications
"... We present Mantis, a framework for predicting the performance of Android applications on given inputs automatically, accurately, and efficiently. A key insight underlying Mantis is that program execution runs often contain features that correlate with performance and are automatically computable eff ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
(Show Context)
We present Mantis, a framework for predicting the performance of Android applications on given inputs automatically, accurately, and efficiently. A key insight underlying Mantis is that program execution runs often contain features that correlate with performance and are automatically computable efficiently. Mantis synergistically combines techniques from program analysis and machine learning. It constructs concise performance models by choosing from many program execution features only a handful that are most correlated with the program’s execution time yet can be evaluated efficiently from the program’s input. We apply program slicing to accurately estimate the evaluation cost of a feature and automatically generate executable code snippets for efficiently evaluating features. Our evaluation shows that Mantis predicts the execution time of six Android apps with estimation error in the range of 2.2-11.9 % by executing predictor code costing at most 1.3 % of their execution time on Galaxy Nexus. 1
1Ready, Set, Go: Coalesced Offloading from Mobile Devices to the Cloud
"... Abstract—With an abundance of computing resources, cloud computing systems have been widely used to elastically offload the execution of computation-intensive applications on mobile devices, leading to performance gains and better power efficiency. However, existing works have so far focused on one ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
(Show Context)
Abstract—With an abundance of computing resources, cloud computing systems have been widely used to elastically offload the execution of computation-intensive applications on mobile devices, leading to performance gains and better power efficiency. However, existing works have so far focused on one application only, and multiple applications are not coordinated when sending their offloading requests to the cloud. In this paper, we propose the new technique of coalesced offloading, which exploits the potential for multiple applications to coordinate their offloading requests with the objective of saving additional energy on mobile devices. The intuition is that, by sending these requests in “bundles, ” the period of time that the network interface stays in the high-power state can be reduced. We present two online algorithms, collectively referred to as Ready, Set, Go (RSG), that make near-optimal decisions on how offloading requests from multiple applications are to be best coalesced. We show, both analytically and experimentally using actual smartphones, that RSG is able to achieve additional energy savings while maintaining satisfactory performance. I.
Computational Offloading or Data Binding? Bridging the Cloud Infrastructure to the Proximity of the Mobile User
"... Abstract—Mobile and cloud computing are converging as the prominent technologies that are leading the change to the post personal computing (PC) era. Computational offloading and data binding are the core techniques that foster to elastically augment the capabilities of low-power devices, such as sm ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
(Show Context)
Abstract—Mobile and cloud computing are converging as the prominent technologies that are leading the change to the post personal computing (PC) era. Computational offloading and data binding are the core techniques that foster to elastically augment the capabilities of low-power devices, such as smartphones. Mobile applications may be bonded to cloud resources by following a task delegation or code offloading criteria. In a delegation model, a handset can utilize the cloud in a service-oriented manner to delegate asynchronously a resource-intensive mobile task by direct invocation of the service. In contrast, in an offloading model, a mobile application is partitioned and analyzed so that the most computational expensive operations at code level can be identified and offloaded to a remote cloud-based surrogate. We compared in this paper, the mobile cloud computing models for offloading and delegation. We utilized our own frameworks for computational offloading and data binding in the analysis. While in principle, offloading and delegation are viable methods to augment the capabilities of the mobile devices with cloud power, they enrich the mobile applications from different perspectives at diverse computational scales.
Pomac: Properly offloading mobile applications to clouds
- in Proceedings of the 6th USENIX conference on Hot Topics in Cloud Computing. USENIX Association
, 2014
"... Abstract Prior research on mobile computation offloading has mainly focused on how to offload as well as what to offload. However, the problem of whether the offloading should be done attracted much less attention. In addition, existing offloading schemes either require special compilation or modif ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract Prior research on mobile computation offloading has mainly focused on how to offload as well as what to offload. However, the problem of whether the offloading should be done attracted much less attention. In addition, existing offloading schemes either require special compilation or modification to the applications' source code or binary, making them difficult to be deployed in practice. In this work, we introduce POMAC, a framework to enable dynamic and transparent mobile application offloading to clouds. A prototype has been implemented on the Dalvik virtual machine and our preliminary evaluations show that POMAC can outperform existing schemes significantly and work with real-world applications seamlessly.
Transient Clouds: Assignment and Collaborative Execution of Tasks on Mobile Devices
"... Abstract—Mobile devices are evolving into powerful systems due to recent advances in their communication, storage and computation technologies. They are poised to play a key role in providing a rich collaborative computing platform for vari-ous applications. This paper proposes “Transient Clouds ” ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
(Show Context)
Abstract—Mobile devices are evolving into powerful systems due to recent advances in their communication, storage and computation technologies. They are poised to play a key role in providing a rich collaborative computing platform for vari-ous applications. This paper proposes “Transient Clouds ” – a collaborative computing platform that allows nearby devices to form an ad-hoc network and provide various capabilities as cloud services. Transient Clouds utilize the collective capabilities of the devices present, along with their social and context awareness that cannot be provided efficiently by the traditional clouds. We present a modified algorithm of the Hungarian method for assigning tasks to devices in order to achieve various goals (e.g., load balancing, collocating executions, etc...). We evaluate the performance of our proposed algorithms through simulation and provide a real implementation on the Android platform using the Wi-Fi Direct framework. We envision Transient Clouds to be utilized in temporal scenarios in which the cloud is created on-the-fly by the devices present in an environment and would disappear as the devices leave the network. I.
A survey of fog computing: Concepts, applications and issues
- in Proceedings of the 2015 Workshop on Mobile Big Data. ACM
, 2015
"... Despite the increasing usage of cloud computing, there are still issues unsolved due to the inherent problem of cloud computing such as unreliable latency, lack of mobility sup-port and location-awareness. Fog computing, also termed edge computing, can address those problems by providing elastic res ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
(Show Context)
Despite the increasing usage of cloud computing, there are still issues unsolved due to the inherent problem of cloud computing such as unreliable latency, lack of mobility sup-port and location-awareness. Fog computing, also termed edge computing, can address those problems by providing elastic resources and services to end users at the edge of network, while cloud computing are more about providing resources distributed in the core network. This survey dis-cusses the definition of fog computing and similar concepts, introduces representative application scenarios, and identi-fies various aspects of issues we may encounter when de-signing and implementing fog computing systems. It also highlights some opportunities and challenges, as direction of potential future work, in related techniques that need to
SMOC: a secure mobile cloud computing platform
- In INFOCOM
, 2015
"... Abstract—Mobile devices are now ubiquitous in the modern world. In this paper, we propose a novel and practical mobile-cloud platform for smart mobile devices. Our platform allows users to run the entire mobile device operating system and arbitrary applications on a cloud-based virtual machine. It h ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
(Show Context)
Abstract—Mobile devices are now ubiquitous in the modern world. In this paper, we propose a novel and practical mobile-cloud platform for smart mobile devices. Our platform allows users to run the entire mobile device operating system and arbitrary applications on a cloud-based virtual machine. It has two design fundamentals. First, applications can freely migrate between the user’s mobile device and a backend cloud server. We design a file system extension to enable this feature, so users can freely choose to run their applications either in the cloud (for high security guarantees), or on their local mobile device (for better user experience). Second, in order to protect user data on the smart mobile device, we leverage hardware virtualization technology, which isolates the data from the local mobile device operating system. We have implemented a prototype of our platform using off-the-shelf hardware, and performed an extensive evaluation of it. We show that our platform is efficient, practical, and secure. I.