ThinkAir: Dynamic Resource Allocation and Parallel Ex ecution in Cloud for Mobil e Code Offloading
Sokol Kosta, Pan Hui
Deutsche Telekom Labs, Berlin, Germany
Andrius Aucinas, Richard Mortier
University of Cambridge, Cambridge, UK
Xinwen Zhang
Huawei Research Center, Santa Clara, CA, USA
IEEE INFOCOM 2012
Prominent Related Works
MAUI(2010)
◦Provides method level code offloading based on .NET framework.
◦Does not address the scaling of execu tion in cloud.
CloneCloud(2011)
◦Provides offline static analysis of d ifferent running condition of the pro cess binary, and build a database of pre-computed partitions.
◦Limited input/environment conditions, and needs to be bootstrapped for ever y new apps.
ThinkAir
A framework that exploits the conc ept of smart phone virtualization in the cloud, and provides method- level computation offloading.
◦Parallelizing method execution using multiple VM images.
On-demand resource allocation.
◦Online method-level offloading.
Design Goals
Dynamic adaptation to changing env ironment.
Ease of use for developers.
Performance improvement through cl oud computing.
Dynamic scaling of computation pow
er.
Overview
Annotate methods
with @Remote .
Execution Controller
Make offloading decisions.
Four policies:
◦Execution time
◦Energy
◦Execution time and energy
◦Execution time, energy, and cost.
Client Handler
Code execution
◦Manage connection.
◦Execute code.
◦Return results.
VM management
◦Add VM with more computing power or resources.
◦Distributes task among VMs, and collects results.
Cloud Infrastructure
OS: customized
version of Android x86.
6 types of VM.
VM Resume latency:
◦Paused: 300ms
Up to 7s if too many VMs are resumed
simultaneously.
◦Powered-off: 32s
Profilers
Hardware profiler
◦CPU, Screen, WiFi, 3G
Software profiler
◦Use Android Debug API to record
information.
Network profiler
Energy Estimation Model
Modify the original PowerTutor model.
PowerTutor
[1]model
◦CPU, LCD screen, GPS, WiFi, 3G,
and audio interface.
◦HTC Dream phone.
[1] Accurate online power estimation and automatic battery behavior based power model generation for smartphones, CODES/ISSS ’10
Experiment Setup
BIV(boundary input value)
◦The minimum value of the input parame ter for which offloading would give a benefit.
Offloading policy: execution time .
Different Scenarios:
◦Phone
◦WiFi-Local (RTT 5ms)
router attached to cloud server.
◦WiFi-Internet (RTT 50ms)
◦3G (RTT 100ms)
Micro-Benchmark
[2]Results
Network latency clearly affects th e BIV.
[2]
http://kano.net/javaben ch/
N-Queen Results
BIV = 5
N-Queen Results(Cont.)
N = 8
Different CPU energy consumed
◦Due to bandwidth and latency of the link s, and subsequently affected the time sp ent waiting for results and in transmiss ion.
Face Detection Results
Counts the number of faces in a pi cture.
◦Photos are loaded in both device and cloud.
Face Detection Results(Con t.)
100 pictures
Virus Scanning Results
◦Total size of files: 10MB
◦Number of files: ~3,500
CPU energy consumption is lower wh
en offloading using 3G.
Parallelization with Multiple VM Clones
Workloads are
evenly distributed among VMs.
Clones are
resumed from
pause state.
Conclusion
ThinkAir is a framework for offloadi ng mobile computation to the cloud, with the ability of on-demand VM res ource scaling.