Mark Gordon PowerPoint Presentation, PPT - DocSlides

Mark Gordon PowerPoint Presentation, PPT - DocSlides

2016-07-30 69K 69 0 0

Description

1. COMET: Code Offload by. Migrating Execution Transparently. OSDI'12. Mark Gordon, Anoushe Jamshidi,. Scott Mahlke, Z. Morley Mao, and Xu Chen. University of Michigan, AT&T Labs - Research. Mark Gordon. ID: 425561

Embed code:

Download this presentation



DownloadNote - The PPT/PDF document "Mark Gordon" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentations text content in Mark Gordon

Slide1

Mark Gordon

1

COMET: Code Offload by

Migrating Execution Transparently

OSDI'12

Mark Gordon, Anoushe Jamshidi,Scott Mahlke, Z. Morley Mao, and Xu Chen

University of Michigan, AT&T Labs - Research

Slide2

Mark Gordon

2

Overview

Introduction

Distributed Shared Memory

COMET Design

Evaluation

Summary

Slide3

Mark Gordon

3

What is offloading?

Mobile devicesHave limited resourcesAre well connectedCan we bring network resources to mobile?Can a system transparently make this available?

Slide4

Mark Gordon

4

Related Work

MAUI and CloneCloud

Utilize server resources

Computation, energy, memory, disk

'Capture and migrate' method level offloading

Areas for improvement

Thread and synchronization support

Offload part of methods

Slide5

Mark Gordon

5

COMET's Goals

Improve mobile computation speed Require no programmer effort Generalize well with existing applications Resist network failures

Slide6

Mark Gordon

6

Overview

Introduction

Distributed Shared Memory

COMET Design

Evaluation

Summary

Slide7

Mark Gordon

7

Distributed Shared Memory

COMET is offloading + DSMOffloading bridges computation disparityDSM provides logically shared address spaceDSM usually applied to cluster environmentsLow latency, high throughputMobile relies on wireless communication

Slide8

Mark Gordon

8

X=123

X=555

X=555

X=555

X=?

X=?

X=123

DSM (continued)

Conventional DSM (Munin)

X=123

Waited an RTT for a write

Read could take RTT also

Slide9

Mark Gordon

9

Java Memory Model

Dictates which writes a read can observeSpecifies 'happens-before' partial orderAccess in single thread totally orderedLazy Release Consistency lockingFundamental memory unit is the fieldKnown alignment, known width

Slide10

Mark Gordon

10

Field DSM

Track dirty fields locally

Need 'happens-before' established?

Transmit dirty fields! (mark fields clean)

Not clear it scales well past two endpoints

Not important to our motivation

Use classic cluster DSM on server

Slide11

Mark Gordon

11

Overview

Introduction

Distributed Shared Memory

COMET Design

Evaluation

Summary

Slide12

Mark Gordon

12

VM-synchronization

Used to establish 'happens-before' relation

Directed operation between pusher and puller

Synchronizes

Bytecode sources

Java thread stacks

Java heap

Slide13

Mark Gordon

13

Bytecode Update (Step 1 of 3)

Operation begins by sending any new code

I loaded file xyz.dex

I have xyz.dex cached

Send xyz.dex

[xyz.dex]

Pusher

Puller

Slide14

Mark Gordon

14

Stack Update (Step 2 of 3)

Next we send over thread stacks

Thread id: 2

job2::run

pc:5

registers[42, 555, 0]workLoop pc:6 registers[0, [obj:9]]start pc:3 Registers[101, [obj:9]]

Pusher

Puller

Slide15

Mark Gordon

15

Heap Update (Step 3 of 3)

Finally send over heap update

We send updates to any changed (or new) fieldOnly send updates of 'shared' heap

Pusher

Puller

[obj:2].y = 1

[obj:4].z = [obj:3]

...

Slide16

Mark Gordon

16

Lock ownership

Annotate with lock ownership flag

Establish 'happens-before' with VM-sync

Slide17

Mark Gordon

17

Thread Migration

Thread migration trivial

Push VM-syncTransfer lock ownership

Pusher

Puller

Slide18

Mark Gordon

18

Native Methods

Written in C with bindings for Java

Math.sin(), OSFileSystem.write(), VMThread.currentThread()

Native methods exist to

Access device resources (file system, display, etc)

For performance reasons

To work with existing libraries

Not generally safe to run on either endpoint

Manually white list safe native methods

Slide19

Mark Gordon

19

Failure Recovery

VM-synchronization is recovery safe

Always leave enough information on clientIf server is lost resume threads running locally!A few caveats (native methods)

Slide20

Mark Gordon

20

Tau-Scheduler

Τ = 2 * VM-synchronization time

Slide21

Mark Gordon

21

Implementation

Built from gingerbread CyanogenMod source~5000 lines of C codeJIT not included

Engine.c:offMigrateThread()

offWriteU1(self, OFF_ACTION_MIGRATE); deactivate(self); offThreadWaitForResume(self);

Slide22

Mark Gordon

22

Overview

Introduction

Distributed Shared Memory

COMET Design

Evaluation

Summary

Slide23

Mark Gordon

23

Evaluation Setup

Samsung Captivate (1 GHz Hummingbird)2 x 3.16GHz quad core Xeon X5460 cores

Slide24

Mark Gordon

24

Benchmarks

8 applications from Google Play

Average speed-up of 2.88X on WiFi / 1.28X on 3G

Average energy saving of 1.51X on WiFI / 0.84X on 3G

2 computation benchmark applications

10.4X speed-up w/ WiFi on Linpack

500+X speed-up w/ multi-threaded factoring

Slide25

Mark Gordon

25

Rhino

Java JavaScript InterpreterRan with SunSpider JavaScript benchmark

Slide26

Mark Gordon

26

Overview

Introduction

Distributed Shared Memory

COMET Design

Evaluation

Summary

Slide27

Mark Gordon

27

Summary

Offloading+DSM=COMETImprove computation speedNo programmer effortGeneralize wellResist network failures

Slide28

Mark Gordon

28

Contributions

Design/Impl. with four simultaneous goals

Fine granularity offloading

Mutli-threading support

Field based DSM coherency

Slide29

Slide30

Slide31

Slide32

Slide33

Slide34

Slide35


About DocSlides
DocSlides allows users to easily upload and share presentations, PDF documents, and images.Share your documents with the world , watch,share and upload any time you want. How can you benefit from using DocSlides? DocSlides consists documents from individuals and organizations on topics ranging from technology and business to travel, health, and education. Find and search for what interests you, and learn from people and more. You can also download DocSlides to read or reference later.