Computation Offloading as a Service for Mobile Devices
• a key challenge in computation offloading lies in the mismatch between how individual mobile devices demand and access computing resources and how cloud providers offer them. Gap between mobile device demand and resource provided by cloud providers
• Offloading requests from a mobile device require quick response and
may not be very frequent . Therefore computation offloading should be immediately available upon request and be quickly released after execution. • In contrast , cloud computing resources have long setup time and are leased for long time quanta. AmazonEC2 example COSMOS Introduction
• Aim to manage and schedule cloud resources and provide them
accordingly in an efficient manner to the mobile user. • Provide computational offloading as a service • Provide resources in a cost-effective manner to a mobile user during app offloading • allocate resources in a low-risk manner considering variable network connection COSMOS (Cont’d)
acts as an intermediate between commercial cloud providers and a
mobile user. comprises three components
• COSMOS master (running on VM instance)
• COSMOS server (running on VM instance) • COSMOS clients (running on mobile device) Architecture of COSMOS system COSMOS master
• central component of the entire architecture
• manage cloud resources and exchange information with mobile devices • collects information about different computational tasks from COSMOS clients through task tracker • collects information about different workloads on various COSMOS servers through server tracker. • using this information , COSMOS master decides existence of a COSMOS server(number and type of active COSMOS servers over time) COSMOS server
• execute offloaded tasks of a mobile user
• maintains a task queue and no of equivalent CPU cores. • tasks are executed as FCFS manner • predicts execution time of each task depending upon its resource requirements through execution predictor. COSMOS clients
• tracks all applications running on its mobile device, makes offloading
decisions for them, and allocates tasks to COSMOS Servers
• COSMOS client decides whether an application should be offloaded
or not by calculating resource consumption and resource requirement of an application and categorized as normal application or resource- hungry application. How it works?
• When a mobile application starts, an application tracker monitors the
application execution and identifies its compute-intensive tasks in the same way as MAUI and Clone Cloud .
• The offloading controller obtains the computation speedup from the
execution predictor and the communication delay from the connectivity predictor and decides if it should offload the task based on them.
• If it decides to offload , the COSMOS Client allocates the task to an active
COSMOS Server. Finally the COSMOS Client offloads the task and waits to receive the result. If the COSMOS Client cannot obtain the results before a deadline, it executes the task on a local worker. Functionalities of COSMOS architecture
• This is the problem of determining the number and type of VM
instances to lease over time.
• Resources are provided in form of VM instances by cloud provider
• It has two major goals.
• First, there should always be enough VM instances to ensure high offloading speedup • Second, the cost of leasing VM instances should be minimized. Offloading decision • This is the problem of deciding if a mobile device offloads a computation task.
• A wrong offloading decision will both waste time and money to a
mobile user as well as lead to wastage of cloud resources and result in lower speedup.
• It is very important to properly handle the uncertainties carefully such
as network availability ,resource requirements, application execution. Task allocation • This is the problem of choosing a VM instance among all available instances if we decide to offload a computation task.
• The VM instance should have sufficient configurations to run the
offloaded mobile application. task allocation should be done in an optimized manner as it could lead to overconsumption of cloud resources. •Thank you!