self-tuned remote execution for pervasive computing

23
Self-Tuned Remote Execution for Pervasive Computing Jason Flinn, Dushyanth Narayanan and M.Satyanarayanan Presented by: Kevin McGregor

Upload: kevin-mcgregor-msc-ifc

Post on 20-Aug-2015

373 views

Category:

Technology


1 download

TRANSCRIPT

Self-Tuned Remote Execution for Pervasive ComputingJason Flinn, Dushyanth Narayanan and M.Satyanarayanan

Presented by:Kevin McGregor

2

Outline

Motivation Spectra

o Design goalso Overviewo Implementationo Preliminary Evaluationo Strength and Weaknesso Future work

Summary

3

Motivation Need for mobility. Size limitation on

mobile devices. Modern applications

are resource intensive.

Mobile users want the look and feel of desktop applications.

4

Solution Remote execution.

o Mobile device discover execution servers over a wireless network.

o Mobile device “off-load” the execution of resource-intensive processes onto the remote server.

5

Spectra : Design Goals Spectra tries to meet the

application goals in the light of available resources.

Monitors mobile devices resources and dynamically determines the best remote execution plan bandwidth, file cache state, CPU, and

battery life.

6

Spectra : Design Goals

Applications do not specify resource needs.

Spectra uses a method called self-tuning. Records and logs the history of resource

usage by an application. Uses machine learning techniques to predict

future usage.

7

Spectra - Overview Remote execution

component of Aura. Coda Provides a single

shared file system. Applications use

Odyssey interface to communicate with Spectra.

8

Spectra : Implementation

Spectra consists of three main components Application interface Resource Monitor Decision Engine

9

Spectra : Implementation

Application Interface Applications register operations

Fidelities. Input parameters that affect operation

complexity. Method of dividing computation.

10

Spectra : Implementation

Application Interface Method of dividing computation

Local mode – client Remote mode – server Hybrid mode – Application executed

locally then executed remotely

11

Spectra : Implementation

Resource Monitors Prior to execution, resource monitor

predict how much of resource is needed. Makes prediction for the mobile device

and remote servers. Gathers prediction in a resource

snapshot. Observe application behavior to predict

future resource demand.

12

Spectra: Implementation

Resource Monitors CPU

CPU cycle consumption Network

Available bandwidth. Battery

Amount of charge. File cache

Files in Coda file system.

13

Spectra: Implementation

Resource Monitor Battery

Takes advantage of ‘smart’ batteries chips.

Monitors the amount of charge left. Measures energy use by polling the chip

to sample energy use.

14

Spectra : Implementation

Resource Monitor File cache

Calculate the time and energy cost of fetching uncached items

Provides estimate for files accessed in Coda.

For each file that may be accessed, Coda is queried to determine if file is cached.

15

Spectra : Implementation

Decision engine Chooses a location and fidelity for each

operation. Inputs : Application’s operation

description, monitors’ snapshot of resource availability.

Odyssey’s attempts to find the best execution alternative.

16

Spectra : Implementation

Decision Engine Evaluates alternatives by their impact on user

metrics Execution latency Battery life time Application latency

Calculates a context-independent value for each metric.

Weights each value with an importance function.

Computes a single value for evaluating the alternative.

17

Spectra : Implementation

Decision Engine battery lifetime example

User metric : duration battery should last

Battery importance function (1/E) c

c : critical energy use at present moment E : expected energy use Spectra adjusts c using estimates of

battery charge and power used reported by battery monitor

18

Preliminary Evaluation

Speech recognition application. Mobile device :Compaq Itsy v2.2

pocket with a 206 MHz SA-1100 processor, 32MB DRAM

Server : IBM T20 laptop, 700 MHz PIII,256MB DRAM

19

Preliminary Evaluation

20

Strength and weakness

Focuses on pervasive computing Attempts to preserve resources

when executing an application. Application developers must

modify their applications Does not choose the optimal

execution plan

21

Future work

Spectra developers are aware of the weaknesses.

Currently creating a new remote execution system called Chroma Adaptive Automatic code generation for

developers.

22

Summary

Introduced Spectra. Describe how spectra is tries to

preserve resources. Observed an preliminary

evaluation of Spectra. Chroma.

23

Questions ?