A Virtual Machine Monitor for Utilizing Non-dedicated Clusters

Slides:



Advertisements
Similar presentations
Xen , Linux Vserver , Planet Lab
Advertisements

Chapter 1: Introduction
Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
PRASHANTHI NARAYAN NETTEM.
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.
Virtualization for Cloud Computing
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Computer System Architectures Computer System Software
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
May l Washington, DC l Omni Shoreham Nick Dobrovolskiy VP Parallels Open Platform May 19 th, 2008 Introducing Parallels Server.
Research Achievements Kenji Kaneda. Agenda Research background and goal Research background and goal Overview of my research achievements Overview of.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Jonathan Walpole (based on a slide set from Vidhya Sivasankaran)
CS533 Concepts of Operating Systems Jonathan Walpole.
1 5/25/2016 操作系统课件 教材: 《操作系统概念(第六版 影印版)》 【原书名】 Operating System Concepts(Sixth Edition) [ 原书信息 ] Operating System Concepts(Sixth Edition) [ 原书信息 ] 【原出版社】
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
 H.M.BILAL Operating System Concepts.  What is an Operating System?  Mainframe Systems  Desktop Systems  Multiprocessor Systems  Distributed Systems.
A Virtual Machine Monitor for Utilizing Non-dedicated Clusters Kenji Kaneda Yoshihiro Oyama Akinori Yonezawa (University of Tokyo)
المحاضرة الاولى Operating Systems. The general objectives of this decision explain the concepts and the importance of operating systems and development.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
INFORMATION SYSTEM-SOFTWARE Topic: OPERATING SYSTEM CONCEPTS.
Virtualization Technology and Microsoft Virtual PC 2007 YOU ARE WELCOME By : Osama Tamimi.
Full and Para Virtualization
Virtualizing a Multiprocessor Machine on a Network of Computers Easy & efficient utilization of distributed resources Goal Kenji KanedaYoshihiro OyamaAkinori.
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
CITA 171 Section 1 DOS/Windows Introduction. DOS Disk operating system (DOS) –Term most often associated with MS-DOS –Single-tasking operating system.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
Chapter 16 Client/Server Computing Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
Introduction to Operating Systems Concepts
Virtualization for Cloud Computing
Chapter 1: Introduction
Chapter 1: Introduction
Current Generation Hypervisor Type 1 Type 2.
By Chris immanuel, Heym Kumar, Sai janani, Susmitha
Credits: 3 CIE: 50 Marks SEE:100 Marks Lab: Embedded and IOT Lab
Distributed Shared Memory
Chapter 1: Introduction
Chapter 1: Introduction
Java Win32 native Java VM Linux OS ARM VM Runtime Windows OS
Chapter 1: Introduction
Chapter 1: Introduction
Oracle Solaris Zones Study Purpose Only
KERNEL ARCHITECTURE.
Chapter 1: Introduction
Chapter 1: Introduction
Introduction to Operating Systems
Virtualization Techniques
Outline Midterm results summary Distributed file systems – continued
Intro. To Operating Systems
CLUSTER COMPUTING.
Operating System Concepts
Chapter 1: Introduction
Introduction to Operating Systems
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
Subject Name: Operating System Concepts Subject Number:
High Performance Computing
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Operating System Overview
Chapter 1: Introduction
Operating System Concepts
Chapter 1: Introduction
Presentation transcript:

A Virtual Machine Monitor for Utilizing Non-dedicated Clusters Kenji Kaneda Yoshihiro Oyama Akinori Yonezawa (University of Tokyo) Today I'd like to talk about a virtual machine monitor for utilizing non-dedicated clusters. This is a joint work with Yoshihiro Oyama and Akinori Yonezawa.

What is the Goal of This Work? Build a virtual SMP on a cluster Commodity OS runs on a virtual SMP  Easy management of distributed resources Various applications run on a guest OS  Easy parallel programming with shell script, make command, … The goal of this work is to build a virtual SMP machine on a non-dedicated cluster to provide a single system image. Compared with previous systems for achieving a single system image, our approach has two advantages. First, commodity OS runs on a virtual SMP with minor modifications to the OS kernels. This feature allows us to easily manage distributed resources with mechanisms provided by the OS. Second, a wide variety of parallel applications for shared memory systems run on a guest OS with no modifications to the applications. With this feature, we can easily write and execute parallel programs with familiar tools such as shell script or the make command. cluster virtualization virtual SMP

Virtual Machine Monitor (VMM) Current Status Virtual 8-way SMP is built on a cluster of 8 nodes Linux 2.4 runs as a guest OS Linux 2.4 guest OS virtual SMP Processor Memory … I would like to talk about the current status of this work. We implemented a virtual machine monitor. The VMM builds a virtual 8-way SMP on a cluster of 8 nodes, and Linux 2.4 runs as a guest OS on a virtual machine. Virtual Machine Monitor (VMM) host OS Linux 2.4 Linux 2.4 Linux 2.4 physical machines Processor Processor Processor … Memory Memory Memory

Demo Distributing a workload with our VMM I would like to demonstrate how we can distribute a workload using our VMM. The central window is a terminal of Linux running on a virtual 8-way SMP, and the upper window shows the CPU load of the cluster. When we fork multiple processes on Linux, the processes are automatically allocated on the virtual machine’s processors by the scheduling mechanism of Linux. The processes are then allocated on the physical machines’ processor which the virtual machine’s processors are mapped to. In addition, we can easily control these processes using the process management mechanism provided by Linux. For example, we can stop the execution of processes by sending signals to them.

How to Implement our VMM Virtualize hardware resources: Processors Para-virtualization Shared memory Similar to software DSM I/O devices A central server keeps track of virtual devices I would like to talk about the overview of the implementation of our VMM. This slide summarizes how the VMM virtualizes processors, shared memory, and I/O devices. To virtualize processors, the VMM achieves para-virtualization of the ISA. A guest operating system is statically modified to run optimally in a virtual machine. To virtualize shared memory, the VMM uses a mechanism similar to software distributed shared memory. The current implementation is based on sequential consistent, multiple-reader/single-writer protocol. To virtualize I/O devices, the VMM prepares a central server that keeps track of the states of all the devices.

Support of Hotplug of Physical Machines VMM keeps a virtual SMP consistent even if physical machines are added or removed consistent = # of virtual processors is fixed virtual N-way SMP The VMM supports hotplug of physical machines. It keeps a virtual SMP consistent even if physical machines are added or removed dynamically. Specifically, it keeps the number of virtual processors fixed even if the number of physical processors changes constantly. virtualization

How to Support Hotplug VMM dynamically maps virtual processors to physical processors VMM moves some virtual processor to a newly added physical machine Processor Memory virtual SMP To provide a fixed number of processors, the VMM dynamically maps virtual processors to physical processors. For example, when a physical machine is added, the VMM moves some virtual processor to the newly added machine. physical machines Processor Memory Processor Memory Processor Memory

Future Work Performance Improvement Fault tolerance Optimizing our memory coherence algorithm Fault tolerance with a distributed check-pointing algorithm We plan several extensions and improvements to our system. For example, we plan to improve the performance of our VMM by optimizing our memory coherence algorithm. We also plan to implement a fault tolerance mechanism. We plan to use a distributed check-pointing algorithm to get a snapshot of individual virtual processors.

Thank You for Your Attention Source code is available at http://www.yl.is.s.u-tokyo.ac.jp/projects/vincs/