Disco: Running Commodity Operating Systems on Scalable Multiprocessors Bugnion et al. Presented by: Ahmed Wafa.

Slides:



Advertisements
Similar presentations
Virtualization Technology
Advertisements

System Area Network Abhiram Shandilya 12/06/01. Overview Introduction to System Area Networks SAN Design and Examples SAN Applications.
Distributed Systems CS
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Disco: Running Commodity Operation Systems on Scalable Multiprocessors E Bugnion, S Devine, K Govil, M Rosenblum Computer Systems Laboratory, Stanford.
1 Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, Mendel Rosenblum, Stanford University, 1997 Presented.
Disco Running Commodity Operating Systems on Scalable Multiprocessors Presented by Petar Bujosevic 05/17/2005 Paper by Edouard Bugnion, Scott Devine, and.
The Multikernel: A new OS architecture for scalable multicore systems Andrew Baumann et al CS530 Graduate Operating System Presented by.
1. Overview  Introduction  Motivations  Multikernel Model  Implementation – The Barrelfish  Performance Testing  Conclusion 2.
Multiprocessors CS 6410 Ashik Ratnani, Cornell University.
Shared Memory Multiprocessors Ravikant Dintyala. Trends Higher memory latencies Large write sharing costs Large secondary caches NUMA False sharing of.
G Robert Grimm New York University Disco.
DISTRIBUTED CONSISTENCY MANAGEMENT IN A SINGLE ADDRESS SPACE DISTRIBUTED OPERATING SYSTEM Sombrero.
CS533 Concepts of Operating Systems Class 14 Virtualization.
OPERATING SYSTEM OVERVIEW
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
1 Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum, Stanford University, 1997.
1 I/O Management in Representative Operating Systems.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #29-1 Chapter 33: Virtual Machines Virtual Machine Structure Virtual Machine.
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples:  VMWare,
Multiprocessors Deniz Altinbuken 09/29/09.
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina.
Computer System Architectures Computer System Software
Cellular Disco: resource management using virtual clusters on shared memory multiprocessors Published in ACM 1999 by K.Govil, D. Teodosiu,Y. Huang, M.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
UNIX System Administration OS Kernal Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept Kernel or MicroKernel Concept: An OS architecture-design.
Operating System Support for improving data locality on CC-NUMA machines CSE597A Presentation By V.N.Murali.
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.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
Multiple Processor Systems. Multiprocessor Systems Continuous need for faster and powerful computers –shared memory model ( access nsec) –message passing.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
Improving Network I/O Virtualization for Cloud Computing.
Kinshuk Govil, Dan Teodosiu*, Yongqiang Huang, and Mendel Rosenblum
Kit Cischke 09/09/08 CS Overview  Background  What are we doing here?  A Return to Virtual Machine Monitors  What does Disco do?  Disco: A.
Types of Operating Systems
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum Summary By A. Vincent Rayappa.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard et al. Madhura S Rama.
Supporting Multi-Processors Bernard Wong February 17, 2003.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
OSes: 3. OS Structs 1 Operating Systems v Objectives –summarise OSes from several perspectives Certificate Program in Software Development CSE-TC and CSIM,
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
Types of Operating Systems 1 Computer Engineering Department Distributed Systems Course Assoc. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2015.
Full and Para Virtualization
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Presented by: Pierre LaBorde, Jordan Deveroux, Imran Ali, Yazen Ghannam, Tzu-Wei.
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->
Background Computer System Architectures Computer System Software.
Presented by: Sagnik Bhattacharya Kingshuk Govil, Dan Teodosiu, Yongjang Huang, Mendel Rosenblum.
Introduction Goal: connecting multiple computers to get higher performance – Multiprocessors – Scalability, availability, power efficiency Job-level (process-level)
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Introduction to Virtualization
Virtualization.
Virtual Machine Monitors
Virtual Machines Disco and Xen (Lecture 10, cs262a)
Lecture: Large Caches, Virtual Memory
Disco: Running Commodity Operating Systems on Scalable Multiprocessors
OS Virtualization.
A Survey on Virtualization Technologies
Virtual Machines Disco and Xen (Lecture 10, cs262a)
Shared Memory Multiprocessors
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Operating Systems Structure
Presentation transcript:

Disco: Running Commodity Operating Systems on Scalable Multiprocessors Bugnion et al. Presented by: Ahmed Wafa

Overview Shared Memory Multiprocessor Machines System Software for Shared Memory Multi- processor Disco as a virtual machine monitor Performance Conclusions

Shared Memory Multiprocessors UMA (Uniform Memory Access) NUMA (Non Uniform Memory Access) ccNUMA (Cache-Coherent NUMA)

The Stanford FLASH Multiprocessor Fig1. The FLASH system architecture

System Software for Shared Memory Multi-processors Invest a large development effort for designing/developing custom OS Statically Partition the machine and run commodity systems that communicate together using distributed protocols Run multiple commodity systems on top of a virtual machine monitor that provide dynamic resource sharing

Disco: A Virtual Machine Monitor Fig.2 Disco's Architecture

Challenges facing Virtual Machines Overheads. Resource Management. Communication and Sharing.

Disco Interface. Implementation. Running Commodity Operating systems.

Disco's Interface Processors – Virtual CPUs that abstracts the MIPS R10000 Physical Memory – Contiguous space starting at address 0 – Near Uniform memory access time I/O Devices – Virtualize access to devices. – Virtual subnet to allow communication

Disco's Implementation Virtual CPUs Virtual Physical Memory NUMA Memory Management Virtual I/O Devices Copy-on-write Disks Virtual Network Interfaces

Implementation: Virtual CPUs Direct Execution when possible MIPS modes – Kernel – Supervisor – User

Implementation: Virtual Physical Memory Fast and Correct Mapping from the VM virtual address space to the real machine address space Handling of TLB misses and the pmap data structures TLB miss cost and Disco's Second-Level TLB

Implementation: NUMA Memory Management Satisfying Cache misses from local memory Page Migration and Replication FLASH cache miss counter and Hot Pages Disco memmap and TLB shootdowns Fig.3 Page Replication

Implementation: I/O Virtual I/O Devices – Intercepting device access and DMA requests – Special device drivers, single trap per request Copy-on-Write Disks – Used for shared disks – Speed up disk reads by sharing memory Fig.4 Copy-on-Write Page Sharing

Virtual Network Interface Virtual subnet to allow VM communication No MTU limit for packets Aligned messages that span complete pages will be re-mapped rather than copied Sharing vs Replicating for maximizing data locality Fig.5 NFS sharing, replacing bcopy to remap data

Running Commodity Operating Systems IRIX 5.3 a SVR4 based UNIX from SG. Changes for IRIX MIPS and KSEG0 Device Drivers HAL Network mbuf sharing

Experimental Results Setup Execution Overheads Memory Overheads Scalability Dynamic Page Migration and Replication

Experimental Setup The FLASH machine was not available at the time of development Hardware emulation using SimOS

Execution Overheads 3-16% slowdown – TLB misses – System calls Fig.2 Virtualization Overhead Fig.6 Service Breakdown for pmake workload

Memory Overheads Fig.7 Service Breakdown for pmake workload

Scalability IRIX and memory management Using 8 VM(s) reduces delay by 40% Fig.8 Workload Scalability Under Disco

Dynamic Page Migration and Replication The NUMA problem IRIX(non NUMA aware) vs DISCO Fig.9 Performance Benefits of Page Migration

Conclusions Developing system for software for Shared Memory Multiprocessor machines can cost much Disco can present such a machine as a cluster of connected machines through virtualization Disco will allow commodity operating system to be used on such machines

Conclusions Virtualization overhead can be as low as 3%- 16% Optimization techniques can enhance scalability and hide NUMAness from commodity OS

References “The Stanford FLASH multiprocessor”, kuskin et al. MIPS R4400 manual d