Mobile Cloud Computing: A Comparison of PowerPoint Presentation
Application Models. Group #6. Chandra . Shekhar. . Jammi. (95167373). Venkata. Sri . Krishnakanth. . Pulla. (95911880). Prashant. . Tiwari. (22721608). Introduction. Cloud computing offers benefits like increased storage, increased processing capacity, flexibility and mobility, reduced cost et.... ID: 151471Embed code:
Download this presentation
DownloadNote - The PPT/PDF document "Mobile Cloud Computing: A Comparison of" 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 Mobile Cloud Computing: A Comparison of
Mobile Cloud Computing: A Comparison ofApplication Models
Cloud computing offers benefits like increased storage, increased processing capacity, flexibility and mobility, reduced cost etc.
In Mobile arena, numerous constraints hinder actual realization of above mentioned
This gives rise to many research opportunities.
We discuss some progress in this domain so far.Slide3
What is Mobile Cloud Computing
A combination of cloud computing, wireless infrastructure, portable devices, location based services have given rise to it.
Mobile cloud computing is a model for transparent
access to cloud storage and computing
dynamic adjusting of offloading in
change in operating conditions
Preserve available sensing
and interactivity capabilities of mobile devicesSlide4
Challenges and Issues
Existing cloud computing tools consider process parallelizing on massive data volume, large data storage and flexible VM management.
Mobile Cloud Computing requires computation and storage offloaded to the crowd respecting user interactivity in every possible way.
Addressing mobile constraints is the only way.Slide5
Challenges in this domain:
How to abstract complex underlying heterogeneous technology.
How to model parameters like low energy capacity and intermittent
-connectivity that influence performance and interactivity of the application.
Integrate processing and storage on cloud considering privacy and security.
Constraints for Mobile Devices: Low Processing Capabilities,
Less available energy, Low Memory, Data rates and plans, Intermittent
-connectivity, Smaller Display etc.Slide6
Types of Mobile Application
Offline Applications: Fat Clients with presentation and business logic processed locally.
Data downloaded from backend.
Advantages: Well Integrated, Optimized Performance, Availability :even without network connectivity.
Disadvantages: No Portability, Complex Code.Slide7
Online Applications: Only presentation layer at the client. All processing done online.
Assume constant connectivity with backend.
Platform issues; Web Technology to rescue.
Advantages: Multiplatform, Direct and Instantaneous Accessibility to better services.
Disadvantages: Excessive latency for real time responsiveness, no access to device features, sometimes difficult to maintain sessions for a long time.
** Urgent Need to Address Dynamic Environment of Mobiles!Slide8
Novel Application Models for Cloud Computing
Augmented execution: Tackle limitation of computation , memory and battery.Systems present ;based on Cloudlets; employ Dynamic VM Synthesis.Cloudlets->Trusted, Resource Rich cluster of computers, well connected to Internet and available to nearby mobiles.Offers low latency, one-hop high bandwidth wireless access.
categories for augmented
Dynamic Virtual Machine Synthesis
Fig 2: Dynamic VM synthesis.Slide10
Elastic Partitioned/ Modularized Application
Due to heterogeneous changing environment, dynamic partitioning and remote execution of applications preferred.
Calling the Cloud: Middleware to dynamically distribute layers of application between device and server, optimizing latency, data transfer and cost.
framework, which is based on R-OSGI that allows decomposition of Java Application in software modules.
MAUI: Code offload to improve battery life. Profiling Information of methods used to predict future invocations.Slide11
Fig 3: Reference Architecture for Elastic Applications
independent and can be
on different computing infrastructures
(Infrastructure as a Service)
such as Amazon EC2 and S3
Application Mobility(Move Application Within Hosts During Execution)
Internet Suspend/Resume:VM encapsulates distinct execution& user customization state.DFS transfers state.Migrate complete VM; More BW and Time
Adaptive Application Mobility Solution.
Based on Java
Interoperability amongst Mobiles based on different H/W.Slide13
Ad-hoc Mobile Cloud
No or weak Internet Connection or Access to Big Cloud Providers.Helps create computing communitiesReduces Data Transfer towards/from network.Eg: The Hyrax Project which uses Hadoop Framework on Mobile Devices for sharing data and computation.
4: A Mobile CloudSlide14
Topics for Exploration
Programming Abstraction: Hide Complexity of Cloud, or have middleware in place.
Cost Model: Consider parameters like module execution time, resource consumption, battery level, monetary cost, security, bandwidth etc.
Adaptation: Two extreme approaches; Laissez-Fair Adaptation and Application Transparent Adaptation.Slide15
Topics for Exploration Contd…
Trust, Security and Privacy: Low control over data, potential data loss.
Unlimited Computational Resources to non- trusted elements.
Cloud Integration: Data Persistence
Shifting modules to cloud &coordination not easy.Slide16
With the increasing use of mobile devices, mobile applications with richer functionalities are becoming ubiquitous
But mobile devices are limited by their resources for computing and power consumption
Cloud – the place for abundant resources
Clouds provide opportunity to do huge computations quickly and accurately
So why not use cloud for mobile computations??Slide18
envisions at an architecture that uses cloud to do computations that consume resources badly on mobiles.
It uses the “connectivity” abilities of the mobile devices as a substitute for computational abilities.
It believes in the intuition that “as long as execution on the cloud is
than execution on the mobile
paying the cost for sending
data and code from the device to the cloud and
be worth it
It aims at finding the right spots in an application automatically where the execution can be partitioned and migrated to the cloud.Slide19
This model is primarily applicable to application layer VMs (virtual machines) since the instruction sets in it are
and hence provide hardware and OS independence
It exhibits opportunistic but conservative consistency
The partitioning component for finding migration points uses –
to find the constraints and the
for building the cost model for execution and migration
It finally uses an optimizer that uses the above constraints and cost models to derive the partitionsSlide20
The partitioning mechanism yields the partitions in the application that are optimal at execution time and energy consumption
It is run multiple time under different conditions and objective functions – stores all partitions in a database
At run time, the execution picks a partition among these and modifies the executable before invocation
It has three components – static analyzer, dynamic profiler and optimization solverSlide21
Fig 5: Partitioning Analysis FrameworkSlide22
The static analyzer identifies the legal partitions of the application executable according to a set of
Migration is restricted to the method entry and exit points
Two more restrictions for simplicity
Migration is allowed only at the boundaries of application methods but not core system library methods
Migration is allowed at the VM-layer method boundaries but not native method boundaries
Static Analyzer - example
Fig 6: Flow Diagram in a Static AnalyzerSlide24
Static Analyzer - constraints
Three properties of any legal partition
Methods that access specific features of a
be pinned to the
Methods that share native state must be
Prevent nested migration.Slide25
Profiler collects data that will be used to construct the cost model
Currently using randomly chosen set of inputs
Future work is to explore symbolic-execution-based techniques since randomly chosen inputs may not explore all execution paths
Each execution is run once on mobile device and once on the clone in the cloud
Profiler outputs set of executions S and a “profile tree”, for both mobile device and the clone
Dynamic Profiler- example
Fig 7: Example of Dynamic ProfilerSlide27
One node for each method invocation
node also has a leaf child called its residual
Residual node holds residual cost which represents
the cost of running
of code excluding the costs of the methods called by
Computation cost Cc(
); l=0 on mobile device and filled from T, l=1 on the clone and filled from T’
Migration cost Cs(
); sum of a suspend/resume cost and the transfer costSlide28
For energy consumption model, we do the energy measurements with off-board equipment.
CPU activity (processing/idle), display
), and network state (transmitting or receiving/idle
translate them to a
power value using
) = <Cs(
) value from time model> * P(
It aims at picking up application methods
to the clone from the mobile device, so
minimize the expected cost of the partitioned
Decision variable R(m) m= method in the application.
places a migration point at the entry point of the method.
all partitioning choices for R
Using the decision variables R(.), the auxiliary decision variables L(.), the method sets VM and VNatC for all classes C defined during static analysis, and the relations I, DC and TCSlide31
Cost of a partition
The cost of a legal partition R(.) of execution E is given byOptimization objective is to choose R() so as to minimize C(E)
Two unique features of
Thread granularity migration
migration operates at the granularity of a thread
enables migrated threads to use native
hardware(GPUs, Cryptographic accelerators etc.)Slide33
Suspend and capture
suspends migrant thread
Captures its state, passes it to node manager
Node manager transfers the capture to cloneSlide35
Resume and Merge
captures and packages the thread state
Node manager transfers the capture back to the mobile device
in the original process is given the capture for resumptionSlide36
Last Longer with Code
-does not support virtualized methods calling native
-requires programmers to annotate methods as
-requires a solver to be running at the server at runtime (as opposed asynchronous solving in
focuses on migrating at execution points where no native state need to be migrated
access to native resources that are not virtualized already and are not available on clone
Trust worthiness of cloneSlide41
A design that achieves basic augmented execution of mobile applications on the
Prototype delivers up to 20x speed up and 20x energy
Programmer involvement is
Opens up a path for a rich research agenda in hybrid mobile-cloud systemsSlide42