Eyal de Lara Department of Computer Science University of Toronto.

Slides:



Advertisements
Similar presentations
Context-awareness, cloudlets and the case for AP-embedded, anonymous computing Anthony LaMarca Associate Director Intel Labs Seattle.
Advertisements

Wei Lu 1, Kate Keahey 2, Tim Freeman 2, Frank Siebenlist 2 1 Indiana University, 2 Argonne National Lab
Live migration of Virtual Machines Nour Stefan, SCPD.
Adding the Easy Button to the Cloud with SnowFlock and MPI Philip Patchin, H. Andrés Lagar-Cavilla, Eyal de Lara, Michael Brudno University of Toronto.
The case for VM based Cloudlets in Mobile Computing
Source: IEEE Pervasive Computing, Vol. 8, Issue.4, Oct.2009, pp. 14 – 23 Author: Satyanarayanan, M., Bahl, P., Caceres, R., Davies, N. Adviser: Chia-Nian.
Mostafa Ammar, School of Computer Science Georgia Institute of Technology Atlanta, GA Mobile Computing in Cirrus Clouds: Mobile Computing in Cirrus Clouds:
System Center 2012 R2 Overview
Virtualization and Cloud Computing. Definition Virtualization is the ability to run multiple operating systems on a single physical system and share the.
HPC Pack On-Premises On-premises clusters Ability to scale to reduce runtimes Job scheduling and mgmt via head node Reliability HPC Pack Hybrid.
Virtual Machines What Why How Powerpoint?. What is a Virtual Machine? A Piece of software that emulates hardware.  Might emulate the I/O devices  Might.
KMemvisor: Flexible System Wide Memory Mirroring in Virtual Environments Bin Wang Zhengwei Qi Haibing Guan Haoliang Dong Wei Sun Shanghai Key Laboratory.
1/30/2015 Just-in-Time Virtual Machine Provisioning for Cloud Offload Kiryong Ha Carnegie Mellon University.
Systems and Internet Infrastructure Security (SIIS) LaboratoryPage Systems and Internet Infrastructure Security Network and Security Research Center Department.
Autonomous Agents-based Mobile-Cloud Computing. Mobile-Cloud Computing (MCC) MCC refers to an infrastructure where the data storage and data processing.
Chapter 1: Introduction
H. Andrés Lagar-Cavilla Joe Whitney, Adin Scannell, Steve Rumble, Philip Patchin, Charlotte Lin, Eyal de Lara, Mike Brudno, M. Satyanarayanan* University.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Eyal de Lara Department of Computer Science University of Toronto.
DatacenterMicrosoft Azure Consistency Connectivity Code.
1/16/2008CSCI 315 Operating Systems Design1 Introduction Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
Virtualization for Cloud Computing
ThinkAir: Dynamic Resource Allocation and Parallel Execution in Cloud for Mobile Code Offloading Sokol Kosta, Pan Hui Deutsche Telekom Labs, Berlin, Germany.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Windows 7 Windows Server 2008 R2 VirtualizationVirtualization Heterogeneous Server Environment Inventory Linux, Unix & VMware Windows 7 & Server 2008.
H. Andrés Lagar-Cavilla Joe Whitney, Adin Scannell, Steve Rumble, Philip Patchin, Charlotte Lin, Eyal de Lara, Mike Brudno, M. Satyanarayanan* University.
Measuring zSeries System Performance Dr. Chu J. Jong School of Information Technology Illinois State University 06/11/2012 Sponsored in part by Deer &
 Energy Results: Memory Assistant Arcade Game  Performance Results:  Response Time ▪ Memory assistant: 17.3 sec -> 1.5 sec ▪ Arcade game: 6 FPS -> 13.
MOBILE CLOUD COMPUTING
CS 149: Operating Systems April 21 Class Meeting
Building a Real Workflow Thursday morning, 9:00 am Lauren Michael Research Computing Facilitator University of Wisconsin - Madison.
Review of Memory Management, Virtual Memory CS448.
Thanks to Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction n What is an Operating System? n Mainframe Systems.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Slingshot: Deploying Stateful Services in Wireless Hotspots Ya-Yunn Su Jason Flinn University of Michigan Presenter: Youngki, Lee.
Architectures of distributed systems Fundamental Models
Heterogeneous Chip Multiprocessor Design for Virtual Machines Dan Upton and Kim Hazelwood University of Virginia.
June , Enterprise Computing Community - ECC 2010 The Changing Role of the System Programmer Jon L. Veilleux
1© 2011 M. SatyanarayananNSF PeCS Workshop January 27, 2011 Achieving Ubiquity through Hardware Virtualization Mahadev Satyanarayanan School of Computer.
Dynamic VM Synthesis for Cloudlet -ISTC Retreat Poster- Kiryong Ha, Padmanabhan S Pillai, Mahadev Satyanarayanan.
Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M th November, 2008.
Hakim Weatherspoon Robbert van Renesse SUPERCLOUD: GOING BEYOND FEDERATED CLOUDS 1.
Virtual Workspaces Kate Keahey Argonne National Laboratory.
Major Disciplines in Computer Science Ken Nguyen Department of Information Technology Clayton State University.
Mobile Agents For Mobile Computing Department Of Computer Science – Dartmouth College Robert Gray David Kotz Saurab Nog Daniela Rus George Cybenko.
Welcome to CPS 210 Graduate Level Operating Systems –readings, discussions, and programming projects Systems Quals course –midterm and final exams Gateway.
Computer Science in Context Evangelos E. Milios Professor and Graduate Coordinator Faculty of Computer Science Dalhousie University.
Full and Para Virtualization
1 Agility in Virtualized Utility Computing Hangwei Qian, Elliot Miller, Wei Zhang Michael Rabinovich, Craig E. Wills {EECS Department, Case Western Reserve.
Enabling Technologies for Distributed Computing Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing,
EECS 262a Advanced Topics in Computer Systems Lecture 20 VM Migration/VM Cloning November 13 th, 2013 John Kubiatowicz and Anthony D. Joseph Electrical.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Introduction Contain two or more CPU share common memory and peripherals. Provide greater system throughput. Multiple processor executing simultaneous.
Operating Systems: Summary INF1060: Introduction to Operating Systems and Data Communication.
Data-Centric Systems Lab. A Virtual Cloud Computing Provider for Mobile Devices Gonzalo Huerta-Canepa presenter 김영진.
Lecture 10 Page 1 CS 236 Online SSL and TLS SSL – Secure Socket Layer TLS – Transport Layer Security The common standards for securing network applications.
Lecture 5 Page 1 CS 111 Online Process Creation Processes get created (and destroyed) all the time in a typical computer Some by explicit user command.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Dynamic Mobile Cloud Computing: Ad Hoc and Opportunistic Job Sharing.
SnowFlock: Virtual Machine Cloning as a First- Class Cloud Primitive Lagar-Cavilla, et al. Reading Group Presentation 15 December 2011 Adriaan Middelkoop.
COMPSCI 110 Operating Systems
Chapter 1: Introduction
Mobile edge computing Report by Weiqing huang.
John Kubiatowicz Electrical Engineering and Computer Sciences
CSE 451: Operating Systems Autumn 2003 Lecture 10 Paging & TLBs
Operating System Concepts
Operating System Concepts
Presentation transcript:

Eyal de Lara Department of Computer Science University of Toronto

 Health & assisted living, advertising, gaming, travel, social networking, task assistance and education, etc…  Examples:  Augmented reality  Face recognition  Automatic translation  Activity recognition

 Huge pressure on mobile devices in terms of compute capacity, communication, and power budget  High data rate sensors (Cameras and microphones)  Compute intensive (real time classification & online learning)  Interactive 3

 Too much latency for real-time responsiveness  Even 30 msec latency affect interactive performance  Example latencies:  Internet 2 RTT 50 – 200 msec.  Median 3G RTT is 200 msec. 4

n AP with a n-core CPU  Bring the cloud closer:  The Case for VM-based Cloudlets in Mobile Computing, Satyanarayanan, Bahl, Caceres, Davies  Cloudlet: “data center in a box”  Lots of cores with no power constraints one network hop away  Leverage existing protocols for service discovery, encryption, billing and authentication with no extra overhead  Provides tight coupling between the network and the computation  Incremental deployment Low latency, high bandwidth

 Mechanisms to guarantee execution integrity  Privacy: Client should trust that no sensitive data is retained  Correctness of execution: Clients and service provider should trust the correctness of the computation  Developing applications that span the client, AP and cloud  Seamless migration of execution between client, AP and cloud  Supporting flexible business models  Give users access to proprietary algorithms in exchange for context  Provide micropayments to cloudlet owners in exchange for cycles  Broker connections between advertisers and customers 6

 Mechanisms to guarantee execution integrity  Privacy: Client should trust that no sensitive data is retained  Correctness of execution: Clients and service provider should trust the correctness of the computation  Developing applications that span the client, AP and cloud  Seamless migration of execution between client, AP and cloud  Supporting flexible business models  Give users access to proprietary algorithms in exchange for context  Provide micropayments to cloudlet owners in exchange for cycles  Broker connections between advertisers and customers 7

Stateful swift cloning of VMs  State inherited up to the point of cloning  Local modifications are not shared  Clones make up an impromptu/transient cluster  Master is persistent  Clones state is ephemeral VM 0 Host 0 VM 1 Host 1 VM 2 Host 2 VM 3 Host 3 VM 4 Host 4 Virtual Network

tix = sf_request_ticket(howmany) prepare_computation(tix.granted) me = sf_clone(tix) do_work(me) if (me != 0) send_results_to_master() sf_sync() else receive_results() sf_join(tix) scp … more in the future Just like UNIX fork() Block … Child VMs are gone

 Migrate computation to cloudlet  Scale application on cloudlet 10

 VMs are BIG: Don’t send all the state!  Clones need little state of the parent  Clones exhibit common locality patterns  Clones generate lots of private state

 Send only what you really need  Multicast  Network hardware parallelism  Prefetch: exploit locality patterns  Heuristics  Don’t send if I’ll overwrite  Malloc: exploit apps generating new state

Virtual Machine VM Descriptor Multicast ? ? State: Disk, OS, Processes Metadata “Special” Pages Page tables GDT, vcpu ~1MB for 1GB VM 1. Start only with the basics2. Fetch state on-demand3. Multicast: exploit net hw parallelism4. Multicast: exploit locality to prefetch Clone 1 Private State Clone 2 Private State 5. Heuristics: don’t fetch if I’ll overwrite 13

VM suspend (make descriptor) Xend suspend code Contact all hosts Wait for clones to start VM spawn (from descriptor) Xend resume code Clone set up Multicast descriptor 14

32 VMs 800 Milliseconds

 Near-interactive parallel Internet service  Leverage parallelism to do the task in seconds  Examples  Bioinformatics  NCBI BLAST  EBI ClustalW2  Render farm  Quantitative finance farm  Compile farm

 Cluster of 32 Dell PowerEdge, 4 cores  128 total processors  Xen GB VMs, 32 bits, linux pv  Obvious future work  Applications  Bioinformatics: BLAST, SHRiMP, ClustalW  Quantitative Finance: QuantLib  Rendering: Aqsis (RenderMan implementation)  Parallel compilation: distcc

 128 processors  (32 VMs x 4 cores)  1-4 second overhead 143min 87min 20min 7min 110min 61min

 Hierarchical VM fork support  VM fork over wireless 19

 Cloudlets are an attractive solution for next generation context aware apps  VM fork lends itself well for cloudlet computing.  Sub-second cloning time  Negligible runtime overhead

Questions? 21