Download presentation
Presentation is loading. Please wait.
Published byRosemary Stanley Modified over 8 years ago
1
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework for Smartphones
2
Nguyen Thi Thanh Nha - HMCL 2 Cuckoo: A Computation Offloading Framework for Smartphones 2014/7/8
3
Nguyen Thi Thanh Nha - HMCL 3 Cuckoo: A Computation Offloading Framework for Smartphones Mobile Computation Offloading transfer of computation execution outside the mobile device Mobile Computation Offloading transfer of computation execution outside the mobile device 2014/7/8
4
Nguyen Thi Thanh Nha - HMCL A complete framework for computation offloading for Android, which integrates with Eclipse a runtime system a resource manager application for smartphone users a programming model for developers It supports local and remote execution Cuckoo: A Computation Offloading Framework for Smartphones 4 2014/7/8
5
Nguyen Thi Thanh Nha - HMCL Android provides an application model that fits well for computation offloading Android application components Activities Services Content Providers Broadcast Receivers Cuckoo focuses on activities and services Cuckoo: A Computation Offloading Framework for Smartphones 5 2014/7/8
6
Nguyen Thi Thanh Nha - HMCL A schematic overview of the Android IPC mechanism Cuckoo: A Computation Offloading Framework for Smartphones 6 2014/7/8
7
Nguyen Thi Thanh Nha - HMCL Cuckoo: A Computation Offloading Framework for Smartphones 7 2014/7/8 Generates Java files from AIDL files Compiles the Java source code and the generated Java code Bundles the resources, the compiled code and the application into an installable apk file
8
Nguyen Thi Thanh Nha - HMCL 2014/7/8 8 Easy to use and to understand Programming model acts as the interface of the system to the developers Use the Android’s existing ‘activity/service’ model that separate the services (compute intensive parts) and activities (interactive parts of the application). Support both local and remote method implementations. Specifically support remote implementations to be different from the local implementation. Bundle all local and remote code to be together Cuckoo: A Computation Offloading Framework for Smartphones
9
Nguyen Thi Thanh Nha - HMCL Cuckoo: A Computation Offloading Framework for Smartphones 9 2014/7/8 Rewrites the generated Stub for each AIDL interface, so that at runtime Cuckoo can decide whether a method will be invoked locally or remote. -Derives a dummy remote implementation from the available AIDL interface. -Generates an Ant build file. Have to be invoked after the Java Builder
10
Nguyen Thi Thanh Nha - HMCL An application can offload its computation to any resource that runs the Java Virtual machine The user runs a simple Java application, the server, on a resource to enable it to be used for computation offloading. Services available on a phone can be installed onto such a server. Cuckoo: A Computation Offloading Framework for Smartphones 10 2014/7/8
11
Nguyen Thi Thanh Nha - HMCL 2014/7/8 11 The remote resource has to register its address to the Resource Manager application that runs on the phone QR code contains the address of the server Resource description file The Cuckoo framework will query the Cuckoo Resource Manager for any available resources Cuckoo: A Computation Offloading Framework for Smartphones
12
Nguyen Thi Thanh Nha - HMCL 2014/7/8 12 Offloading Decision Ibis communication Client Server Protocol Configuration of Cuckoo: Trade Offs Cuckoo: A Computation Offloading Framework for Smartphones
13
Nguyen Thi Thanh Nha - HMCL 13 At the runtime, The Cuckoo system intercepts all method calls and then decides whether to offload the method invocations or not. If remote, check whether the remote resource is reachable If locally, it return the result to the proxy Cuckoo: A Computation Offloading Framework for Smartphones 2014/7/8
14
Nguyen Thi Thanh Nha - HMCL 14 Middleware for distributed applications, written in Java Communicate between the remote resources and the phones The Ibis High Performance Programming System is used for Cuckoo’s communication. High-level programming model e.g. Remote Method Invocation (RMI) Low-level communication library Ports: unidirectional communication channels Messages are sent between multiple ports. Every port has a unique identifier An Ibis identifier The name of the port. Cuckoo: A Computation Offloading Framework for Smartphones ActivityStubProxyLocal Remote 2014/7/8
15
Nguyen Thi Thanh Nha - HMCL The clients find a server using its Ibis identifier and bind a Send Port to the matching Receive Port at the server to exchange messages with the server. The client will request the server to execute a particular method from a service The client can install the service onto server Cuckoo can switch to another remote resource Cuckoo: A Computation Offloading Framework for Smartphones 15 2014/7/8
16
Nguyen Thi Thanh Nha - HMCL Early binding For gaining speed Try to find and, if needed, install a remote resource at the moment the activity binds to the service Late binding For optimizing energy usage The resource discovery process will be delayed until a method will be invoked Increase maximum number of remote resources Increase the chance to find remote resource that can be used More overhead in terms of time and energy if Cuckoo cannot connect to any of the resources. Execute method of the service in parallel on multiple resources. Speed up execution Energy hungry Configure individual methods of a service to be not offloadable at all Cuckoo: A Computation Offloading Framework for Smartphones 16 2014/7/8
17
Nguyen Thi Thanh Nha - HMCL Object recognition of images captured by the camera Allows the user to teach new objects to the application Converts an image into a feature vector Compute and memory intensive Cuckoo: A Computation Offloading Framework for Smartphones 17 2014/7/8
18
Nguyen Thi Thanh Nha - HMCL Results Always perform object recognition, even when no network connection is available Remote implementation Speed up the recognition (60 times faster) Reduce the energy consumption (40 times less energy) Higher quality object recognition Cuckoo: A Computation Offloading Framework for Smartphones 18 2014/7/8
19
Nguyen Thi Thanh Nha - HMCL 2014/7/8 19 Face detection will determine whether a shot is a hit or not. Cuckoo: A Computation Offloading Framework for Smartphones
20
Nguyen Thi Thanh Nha - HMCL 2014/7/8 20 The major compute intensive operation in this game is the face detection. Without offloading, the slower the processor of the smartphone, the longer it takes for the shot to be analyzed Cuckoo: A Computation Offloading Framework for Smartphones
21
Nguyen Thi Thanh Nha - HMCL Cuckoo does not yet support callbacks. Method arguments can only be used as input parameters and cannot be used in a C-style way as output parameter. Only the return object of a method will be available to the activity. Does not support any form of security. Supports only stateless services. Cuckoo: A Computation Offloading Framework for Smartphones 21 2014/7/8
22
Nguyen Thi Thanh Nha - HMCL A framework that allows local and remote implementations for computation offloading for smartphones It allows a single interface from both implementations It can use more remote servers and it can switch between them if there are disconnections With no big programming effort, Cuckoo can increase the speed of compute intensive operations reduce the energy consumption Cuckoo: A Computation Offloading Framework for Smartphones 22 2014/7/8
23
Nguyen Thi Thanh Nha - HMCL THANK YOU Cuckoo: A Computation Offloading Framework for Smartphones 23 2014/7/8
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.