Dynamic Mobile Cloud Computing: Ad Hoc and Opportunistic Job Sharing.

Slides:



Advertisements
Similar presentations
Eduardo Cuervo - Duke Aruna Balasubramanian - U Mass Amherst Dae-ki Cho - UCLA Alec Wolman, Stefan Saroiu, Ranveer Chandra, Paramvir Bahl – Microsoft Research.
Advertisements

Asaf Cidon. , Tomer M. London
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
SLA-Oriented Resource Provisioning for Cloud Computing
Decentralized Reactive Clustering in Sensor Networks Yingyue Xu April 26, 2015.
ECOS: Leveraging Software-Defined Networks to Support Mobile Application Offloading Aaron Gember, Christopher Dragga, Aditya Akella University of Wisconsin-Madison.
A system Performance Model Instructor: Dr. Yanqing Zhang Presented by: Rajapaksage Jayampthi S.
Institute of Networking and Multimedia, National Taiwan University, Jun-14, 2014.
OpenFOAM on a GPU-based Heterogeneous Cluster
Autonomous Agents-based Mobile-Cloud Computing. Mobile-Cloud Computing (MCC) MCC refers to an infrastructure where the data storage and data processing.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
The new The new MONARC Simulation Framework Iosif Legrand  California Institute of Technology.
ThinkAir: Dynamic Resource Allocation and Parallel Execution in Cloud for Mobile Code Offloading Sokol Kosta, Pan Hui Deutsche Telekom Labs, Berlin, Germany.
 Energy Results: Memory Assistant Arcade Game  Performance Results:  Response Time ▪ Memory assistant: 17.3 sec -> 1.5 sec ▪ Arcade game: 6 FPS -> 13.
Ajou University, South Korea ICSOC 2003 “Disconnected Operation Service in Mobile Grid Computing” Disconnected Operation Service in Mobile Grid Computing.
MOBILE CLOUD COMPUTING
Computation Offloading
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 2007 (TPDS 2007)
Predictive Runtime Code Scheduling for Heterogeneous Architectures 1.
OPTIMAL SERVER PROVISIONING AND FREQUENCY ADJUSTMENT IN SERVER CLUSTERS Presented by: Xinying Zheng 09/13/ XINYING ZHENG, YU CAI MICHIGAN TECHNOLOGICAL.
ErdOS: An energy-aware social operating system Further Reading: (*) Narseo Vallina-Rodriguez, Pan Hui, Jon Crowcroft, Andrew Rice. “Exhausting Battery.
An Autonomic Framework in Cloud Environment Jiedan Zhu Advisor: Prof. Gagan Agrawal.
1 Distributed Process Scheduling: A System Performance Model Vijay Jain CSc 8320, Spring 2007.
Clone-Cloud. Motivation With the increasing use of mobile devices, mobile applications with richer functionalities are becoming ubiquitous But mobile.
Content Sharing over Smartphone-Based Delay- Tolerant Networks.
Nanco: a large HPC cluster for RBNI (Russell Berrie Nanotechnology Institute) Anne Weill – Zrahia Technion,Computer Center October 2008.
Department of Computer Science MapReduce for the Cell B. E. Architecture Marc de Kruijf University of Wisconsin−Madison Advised by Professor Sankaralingam.
Eduardo Cuervo – Duke University Aruna Balasubramanian - University of Massachusetts Amherst Dae-ki Cho - UCLA Alec Wolman, Stefan Saroiu, Ranveer Chandra,
HIGUCHI Takeo Department of Physics, Faulty of Science, University of Tokyo Representing dBASF Development Team BELLE/CHEP20001 Distributed BELLE Analysis.
July 2013 Elastic Offloading by Dale Denis. Dale Denis The Elastic Offloading of Computationally Intensive Tasks to the Cloud to Augment the Computing.
Static Process Scheduling
A System Performance Model Distributed Process Scheduling.
Progress Report 2012/12/12. Computation Offloading Mobile devices have limited energy and computing resources. Offloading some workloads to remote servers.
Data-Centric Systems Lab. A Virtual Cloud Computing Provider for Mobile Devices Gonzalo Huerta-Canepa presenter 김영진.
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
Application-Aware Traffic Scheduling for Workload Offloading in Mobile Clouds Liang Tong, Wei Gao University of Tennessee – Knoxville IEEE INFOCOM
1 Munther Abualkibash University of Bridgeport, CT.
Introduction to Mobile-Cloud Computing. What is Mobile Cloud Computing? an infrastructure where both the data storage and processing happen outside of.
A Hierarchical Edge Cloud Architecture for Mobile Computing IEEE INFOCOM 2016 Liang Tong, Yong Li and Wei Gao University of Tennessee – Knoxville 1.
Distributed and Parallel Processing George Wells.
NFV Group Report --Network Functions Virtualization LIU XU →
Presented by Edith Ngai MPhil Term 3 Presentation
Optimizing Distributed Actor Systems for Dynamic Interactive Services
University of Maryland College Park
Presented by: Saurav Kumar Bengani
Introduction to Load Balancing:
OpenMosix, Open SSI, and LinuxPMI
CS427 Multicore Architecture and Parallel Computing
基于多核加速计算平台的深度神经网络 分割与重训练技术
Mobile Application Development
Hybrid Cloud Architecture for Software-as-a-Service Provider to Achieve Higher Privacy and Decrease Securiity Concerns about Cloud Computing P. Reinhold.
Dynamic Graph Partitioning Algorithm
Privacy Preserving Subgraph Matching on Large Graphs in Cloud
Myoungjin Kim1, Yun Cui1, Hyeokju Lee1 and Hanku Lee1,2,*
A Framework for Automatic Resource and Accuracy Management in A Cloud Environment Smita Vijayakumar.
Meng Cao, Xiangqing Sun, Ziyue Chen May 28th, 2014
Collaborative Offloading for Distributed Mobile-Cloud Apps
Sentio: Distributed Sensor Virtualization for Mobile Apps
Support for ”interactive batch”
Energy Efficient Scheduling in IoT Networks
Data-Intensive Computing: From Clouds to GPU Clusters
Smita Vijayakumar Qian Zhu Gagan Agrawal
Introduction to Operating Systems
Gary M. Zoppetti Gagan Agrawal
Introduction to Operating Systems
Multithreaded Programming
Progress Report 2012/11/28.
Kostas Kolomvatsos, Christos Anagnostopoulos
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Dynamic Mobile Cloud Computing: Ad Hoc and Opportunistic Job Sharing

Introduction Challenges on Mobile Computing – Resource scarceness – Finite energy – Low connectivity Rise of “Cloud Computing” – Offloaded/distributed computing – SaaS/PaaS/IaaS Motivation – Overcoming problems of mobile computing Computational capability Battery Power Connectivity

Motivation Mobile Cloud: ‘cloud’ of mobile and stationary resources that could be utilize to achieve a common goal in a distributed manner.

4 Proposed Architecture

Work Distribution Mechanism Flow 1.Resource Discovery 2.Calculate costs Comparison of potential clients, user priorities, requirements and constraints 3.Distribute jobs 4.Run the jobs 5.Collect the results 6.Cleanup 7.Handle micropayments 5

Cost Model Experiment Environment – Two phones Nokia X6 Nokia 6500 – PC Windows 7 Enterprise Inter Core Duo CPU E /267 GHz RAM 2GB – Bluetooth Communication Consume less energy Improving speed of communication 6

Cost Model – Cost Formulae Sharing Jobs Offloading – Parameters for offloading in the master’s perspective 7 T m : Total time to complete the job in Master T pt : Time to establish piconet T d : Time to partition/distribute jobs to slaves T w&r : Time the master spends waiting for slaves T s : Time to complete the master’s job T sl : Total time to complete the job in Slave T cn : Time to connect to the master T rcv : Time to receive the job parameter T cp : Time to complete the slave’s job T sr : Time to send the completed result backs T mOff : Total time to complete the job in the Master node T sOff : Total time to complete the job in the Slave node T oj : Time to send job parameters to slaves T piconetOff

Cost Model – Cost Formulae Analytical Model – Offloading to n slaves – Equal job sharing Assume that a job is uniformly partitioned – Speedup S : Computational time for Slave(i) : Computational time for Slave(i) : communication overhead : communication overhead 8 T i : Time for i th job Ki : Ratio of computational times between master and slave communication overhead Computational time for Slave(i)

Cost Model – Cost Formulae Condition of Speedup, from offloading on n devices – If the ratio between the CPU of the slaves and the master device is greater than sum(communication cost of master) and max(computation + communication cost), there would be speedup 9

Cost Model – Pseudo Codes 10

Prototype Implementation Distributed Mandelbrot Set Generation – Mandelbrot Set A fractal model – Parallelizing Assign each device a continuous block of the image 11 A complex number c is part of the Mandelbrot set if, when starting with z 0 = 0 and applying the iteration repeatedly, the absolute value of z n remains bounded however large n gets.

Experiment Result 12 Speedup = T1/Tm

Related Works Partitioning application – Scavenger – MAUI (w/ VMM) – Cuckoo – Hyrax: for Android smartphone application whih are distributed both in terms of data and computation – MMPI VM migration – CloneCloud: to offload to a server through 3G or WiFi for Android phones 13

Conclusion Equal job sharing – Speedup When (Capability of Master) < (Capablities of Slave nodes) Future works – Job distribution regarding device capabilities – “Work stealing” for effective load balancing 14

To offload or not to offload: an efficient code partition algorithm for mobile cloud computing

Introduction Code Partition Problem – Energy/time-efficient way of allocating the components of the target application Characteristic of Good Code Partitioning – Real-time adaptability – Partition Efficiency Code Partitioning Approach – Call graph model MAUI – 0-1 ILP solver Proposed algorithm – Call Link approach

Mobile Cloud System Architecture (in MAUI)

Design Rationale Call graph model – Vertex : Method – Edge(Directed, weighted) – Calling relationship – Weights of vertices and edges Vertex – Execution cost in mobile/cloud Edge – Transferring cost(Input/Response) – Unremoteable methods User Interaction I/O (Sensor, Actuator) Security

Design Rationale Clustered Offloading Property – The offloading methods are likely to be executed sequentially – Sequential offloading saves the cost by reducing the execution cost and extra transferring cost of discrete offloads

Code Partition Algorithm Overview – The best offloading/integrating points on a call graph Finding them on the corresponding call link(derived by DFS) – Linear-time searching strategy – Time Complexity O(V+E)

Code Partition Algorithm Call link – Finding the best offloading and integrating points – NP problem – Sequential execution of call graph in a single thread From the timeline of execution, the call graph can be converted into a call link (executing order in DFS) Finding the best offloading/integrating points – (in a call graph) = (in a call link) Searching complexity of DFS – O(V+E)

Code Partition Algorithm One time offload property – The optimal number of the offloading and integrating points for the each sub-call link is one. – Proof : If more than one point exist, then there should be methods that are embedded between the offloaded methods, which is running with bigger cost on mobile

Code Partition Algorithm Optimal substructure – For a given sub call link, every offloading points share the same optimal integrating point, and the performance improvement of offloading from i is (1) – U i : The utility or performance improvements when offloading starts from method i to its corresponding best integrating point – M i, C i : Execution cost of method i on mobile/cloud – I i, R i : Transferring cost of method i for input/return state – K : the number of methods on the sub call link

Code Partition Algorithm Linear time searching

Code Partition Algorithm Linear time searching

Evaluation Environment – Implementation of the algorithm on C – Cloud Agent CPU – Dual core 2.0Ghz RAM – 4GB – Mobile Agent Samsung Galaxy ACE(GT-S5830) RAM 278MB Android Comparison with 0-1 ILP Solver

Evaluation Comparison in execution time – Face recognition application 19 remoteable methods – NLP application 73 remoteable methods Evaluation with real target apps. – Reverse-engineering to generate the call graphs – Generate weights randomly – focus on the running speed

Evaluation Performance evaluation by RTT