Using idle workstations in a shared computing environment
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
The Coign automatic distributed partitioning system
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Adaptive Offloading Inference for Delivering Applications in Pervasive Computing Environments
PERCOM '03 Proceedings of the First IEEE International Conference on Pervasive Computing and Communications
Using history to improve mobile application adaptation
WMCSA '00 Proceedings of the Third IEEE Workshop on Mobile Computing Systems and Applications (WMCSA'00)
Tactics-based remote execution for mobile computing
Proceedings of the 1st international conference on Mobile systems, applications and services
Dynamic function placement for data-intensive cluster computing
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Tapping into the fountain of CPUs: on operating system support for programmable devices
Proceedings of the 13th international conference on Architectural support for programming languages and operating systems
Wishbone: profile-based partitioning for sensornet applications
NSDI'09 Proceedings of the 6th USENIX symposium on Networked systems design and implementation
The Case for VM-Based Cloudlets in Mobile Computing
IEEE Pervasive Computing
MAUI: making smartphones last longer with code offload
Proceedings of the 8th international conference on Mobile systems, applications, and services
Proceedings of the sixth conference on Computer systems
Sixth EuroSys Conference 2011
Proceedings of the 9th international conference on Mobile systems, applications, and services
The 9th International Conference on Mobile Systems, Applications, and Services
Mobile cloud computing in 3g cellular networks using pipelined tasks
ESOCC'12 Proceedings of the First European conference on Service-Oriented and Cloud Computing
Hi-index | 0.00 |
Mobile devices face a growing demand to support computationally intensive applications like 3D graphics and computer vision. However, these devices are inherently limited by processor power density and device battery life. Dynamic remote execution addresses this problem, by enabling mobile devices to opportunistically offload computations to a remote server. We envision remote execution as a new type of cloud-based heterogeneous computing resource, or a "Cloud-on-Chip", which would be managed as a system resource as if it were a local CPU, with a highly variable wireless interconnect. To realize this vision, we introduce MARS, the first adaptive, online and lightweight RPC-based remote execution scheduler supporting multi-threaded and multi-core systems. MARS uses a novel efficient offloading decision algorithm that takes into account the inherent trade-offs between communication and computation delays and power consumption. Due to its lightweight design, MARS runs on the device itself, instantly adapts its decisions to changing wireless resources, and supports any number of threads and cores. We evaluated MARS using a trace-based simulator driven by real world measurements on augmented reality, face recognition and video game applications. MARS achieves an average speedup of 57% and 33% higher energy savings over the best static client-server partitions.