110 likes | 273 Views
Progress Report. 2012/11/28. Computation Offloading. Mobile devices have limited energy and computing resources. Offloading some workloads to remote servers leads to: Power-saving. Performance improving. Shorter execution time. Better results. Computation Offloading(Cont.).
E N D
Progress Report 2012/11/28
Computation Offloading • Mobile devices have limited energy and computing resources. • Offloading some workloads to remote servers leads to: • Power-saving. • Performance improving. • Shorter execution time. • Better results.
Computation Offloading(Cont.) • Offloading granularity: • Process level • Process migration. • Function/Method level • Target • Android apps. • Activity + Service
Applicable • Image processing • object recognition, OCR, face detection, barcode analysis • Audio processing • speech recognition • Text processing • machine translation • Artificial intelligence for games • Chess • 3D rendering • 3D home interior design • Security • taint analysis and virus scans
Related Works • Cyber foraging • a pervasive computing technique where resource poor, mobile devices offload some of their heavy work to stronger surrogate machines in the vicinity. • Several studies since ‘01. • Scavenger(‘09) • CloneCloud(‘10) • MAUI(’10)
Related Works(Cont.) • Most of the existing works focus more on power than performance. • The most important element is the network speed, then the computation ability of server. • Recent studies focus on “how to make offloading decisions”. • Formulate into a 0-1 ILP problem.
Our Idea • Instead of studying offloading policies, we aim at the effects caused by offloading. • After offloading, a computation-intensive process becomes I/O-intensive. • Does this phenomenon affects scheduler? • Does this phenomenon affects DVFS? • Does this phenomenon affects cache/memory? • …etc.
Our Idea(Cont.) • Identify the influence of property change. • Computation-intensive => I/O-intensive. • Understand Android's strategies for thread scheduling,thread allocation, thread migration,DVFS, and DPM.
Thread Scheduler • Completely Fair Scheduler(CFS) • Since Linux 2.6.23 • /kernel/sched.c • Maintain balance (fairness) in providing processor time to tasks. • Brain Fuck Scheduler(BFS) • …still studying.
Cuckoo • A framework that helps developers to offload computation to the server. • Offloading decisions are made by Cuckoo framework. • Offload if the remote resource is reachable.