adaptive offloading for pervasive computing

19
Adaptive Offloading for Pervasive Computing AmiN AmiN Saremi Saremi 7/6/2005 7/6/2005

Upload: jane

Post on 13-Jan-2016

32 views

Category:

Documents


3 download

DESCRIPTION

Adaptive Offloading for Pervasive Computing. AmiN Saremi 7/6/2005. Introduction. Pervasive Computing Challenge: run complex applications on resource-constrained mobile device such as PDA. Solutions rewrite applications according to the resource capacity of each mobile device - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Adaptive Offloading for Pervasive Computing

Adaptive Offloading for

Pervasive Computing

AmiNAmiN SaremiSaremi

7/6/20057/6/2005

Page 2: Adaptive Offloading for Pervasive Computing

IntroductionIntroduction

• Pervasive ComputingPervasive Computing

• Challenge: run complex applications on Challenge: run complex applications on resource-constrained mobile device such resource-constrained mobile device such as PDA.as PDA.

• SolutionsSolutions– rewrite applications according to the resource rewrite applications according to the resource

capacity of each mobile devicecapacity of each mobile device– application-based or system-based adaptationsapplication-based or system-based adaptations– Adaptive OffloadingAdaptive Offloading

Page 3: Adaptive Offloading for Pervasive Computing

Decision Making Problems for Adaptive Offloading

• The offloading inference engine should trigger offloading at the right time and offload the right program objects to achieve low offloading overhead and efficient program execution.

– adaptive offloading triggering– efficient application partitioning

Page 4: Adaptive Offloading for Pervasive Computing

Solution Overview

• Our assumptions

– the application is written in an object-oriented languages

– the user’s environment contains powerful surrogates and plentiful wireless bandwidth

Page 5: Adaptive Offloading for Pervasive Computing
Page 6: Adaptive Offloading for Pervasive Computing

• Offloading inference engine does not require any prior knowledge about an application’s execution pattern or the runtime environment’s resource status

• offloading inference engine employs the Fuzzy Control model as the basis for the offloading triggering inference module

• selects an effective application partitioning from many possible partition plans

• Memory constraint or CPU speed

Page 7: Adaptive Offloading for Pervasive Computing

Distributed Offloading Platform

•application execution monitoring– Application execution graph– Each graph node represents a Java class

•memory size, AccessFreq, Location, IsNative

– Each graph edge represents the interactions between the objects of two classes•InteractionFreq, BandwidthRequirement

Page 8: Adaptive Offloading for Pervasive Computing

•Resource Monitoring– mobile device, the surrogate, and the

wireless network•available memory in the Java heap, wireless

bandwidth and delay

•Candidate Partition Plan Generation

Page 9: Adaptive Offloading for Pervasive Computing

•Surrogate Discovery

•Transparent RPC Platform

Page 10: Adaptive Offloading for Pervasive Computing

Adaptive Offloading Inference Engine

• Overhead of offloadingOverhead of offloading– transferring objects between the mobile device

and the surrogate– performing remote data accesses and function

invocations over a wireless network

• Offloading Triggering Inference– examines the current resource and the

available resources– Decides whether offloading should be triggered– decides what level of resource utilization

Page 11: Adaptive Offloading for Pervasive Computing

•simple threshold-based approach– “if the current amount of free memory on the mobile device is

less than 20% of its total memory, then trigger offloading and offload enough program objects to free up at least 40% of the mobile device’s memory.”

•Fuzzy Control model– linguistic decision-making rules provided

by system or application developers– membership functions– generic fuzzy inference engine based on

fuzzy logic theory

Page 12: Adaptive Offloading for Pervasive Computing

• Offloading rules• if (AvailMem is low) and (AvailBW is high) then

NewMemSize := low;• if (AvailMem is low) and (AvailBW is moderate) then

NewMemSize := average;• if (AvailMem is high) and (AvailBW is low) then

NewMemSize := high;

• If any of these rules is matched by the current system conditions, the offloading inference engine triggers offloading

• offloading memory size• current memory consumption - new memory

utilization

Page 13: Adaptive Offloading for Pervasive Computing

•Mappings between numerical and linguistic values for each linguistic variable

Page 14: Adaptive Offloading for Pervasive Computing
Page 15: Adaptive Offloading for Pervasive Computing

• Application Partition Selection– considering the target memory utilization on

the mobile device

– multiple offloading requirements• minimizing wireless bandwidth overhead• minimizing average response time• minimizing total execution time

– For each neighbor node Vk of Vi• B i,k to denote the total amount of data traffic

transferred between Vi and Vk,• F i,k to define a total interaction number, • MS k to represent the memory size of Vk.

Page 16: Adaptive Offloading for Pervasive Computing

•For cost metrics Ck and Cl : Ck >=Cl if and only if

•Splitting Large Classes

Page 17: Adaptive Offloading for Pervasive Computing

Trace-Driven Simulation Experiments

•For comparison– algorithm least recently used (LRU)– Split Class– Fuzzy Trigger– our approach

Page 18: Adaptive Offloading for Pervasive Computing
Page 19: Adaptive Offloading for Pervasive Computing

ReferencesReferences

• Xiaohui Gu, Alan Messer, Ira Greenberg, Dejan Milojicic, Klara Nahrstedt, “Adaptive Offloading for Pervasive Computing”, IEEE Pervasive Computing Magazine 2004.

• X. Gu, K. Nahrstedt, A. Messer, I. Greenberg, and D. Milojicic, “Adaptive Offloading Inference for Delivering Applications in Pervasive Computing Environment”, Proc. of IEEE International Conference on Pervasive Computing and Communications (PerCom 2003), Dallas-Fort Worth, Texas, March 2003.