Reducing Memory Virtualization Overheads in Virtualized Datacenters. Jayneel Gandhi, Arkaprava Basu, Michael M. Swift, Mark D.
|
|
- Ariel Price
- 5 years ago
- Views:
Transcription
1 Reducing Memory Virtualization Overheads in Virtualized Datacenters Jayneel Gandhi, Arkaprava Basu, Michael M. Swift, Mark D. Hill
2 Executive Summary Problem: TLB misses in virtual machines Hardware-virtualized MMU has high overheads Up to 280% overhead Prior Work: Direct Segments unvirtualized case Solution: segmentation to bypass paging Extend Direct Segments for virtualization Three configurations with different tradeoffs Results Near- or better-than-native performance 2
3 Outline Motivation Review: Direct Segments Virtualized Direct Segments Optimizations Evaluation Methodology Results Summary 3
4 Overheads of Virtualizing Memory We show that that the increase in translation lookaside buffer (TLB) miss-handling costs due to hard-ware-assisted memory management unit (MMU) is the largest contributor to the performance gap between native and virtual servers. Buell, et al. VMware Technical Journal
5 Unvirtualized x86 translation Virtual Address VA Page Table CR3 Physical Address PA Up to mem accesses = 4 5
6 Two-levels of translation Guest Virtual Address Guest Physical 1 2 Address Host Physical Address cr3 cr3 gva gpa hpa Guest Page Table Nested Page Table Base Virtualized 6
7 Support for Virtualizing Memory gva CR3 hpa Up to Mem accesses gpa 5 ncr3 gpa ncr3 + 5 gpa ncr3 + 5 gpa ncr3 + 5 gpa ncr3 + 4 = 24 7
8 Applications Database Graph-analytics Key-value store HPC Apps Big-memory applications Standard Workloads (in-memory apps) 8
9 EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD Cost of Virtualization 60% 50% 40% Native Virtual Overheads of virtual memory can be high 800% 700% 600% 500% 30% 400% 20% 10% 300% 200% 100% 0% 0% graph500 memcached NPB: CG GUPS 9
10 EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% Cost of Virtualization Native Virtual 60% 50% Overheads of virtualizing virtual memory are even higher 800% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 10
11 EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Cost of Virtualization Native Virtual 60% 50% Larger pages at VMM are not sufficient to achieve native performance 800% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 11
12 EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Cost of Virtualization Native Virtual 60% 50% Large Pages (B) are not sufficient to achieve negligible overheads 800% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 12
13 EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Cost of Virtualization Native Virtual 60% 50% Huge Pages (B) can adversely affect performance 800% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 13
14 THP THP+ THP+ THP THP+ THP+ THP THP+ THP+ THP THP+ THP+ THP THP+ THP+ THP THP+ THP+ 0.59% 0.81% 1.14% EXECUTION TIME OVERHEAD 83% 88% 103% 70% 280% 149% 160% Cost of Virtualization 60% 50% Native Virtual Similar trends for standard workloads 40% 30% 20% 10% 0% cactusadm canneal GemsFDTD mcf omnetpp streamcluster 14
15 Outline Motivation Review: Direct Segments Virtualized Direct Segments Optimizations Evaluation Methodology Results Summary 15
16 Unvirtualized Direct Segments 1 Conventional Paging 2 Direct Segment VA BASE OFFSET LIMIT PA Why Direct Segment? Matches big memory workload needs NO TLB lookups => NO TLB Misses Basu et al. [ISCA 2013] 16
17 Translation with Direct Segments [V 47 V 46 V 13 V 12 ] [V 11 V 0 ] OFFSET BASE? LIMIT<? Direct Segment Ignored N HIT HIT/MISS DTLB Lookup MISS Page-Table Walker [P 40 P 39.P 13 P 12 ] Basu et al. [ISCA 2013] [P 11 P 0 ] 17
18 Translation with Direct Segments [V 47 V 46 V 13 V 12 ] [V 11 V 0 ] OFFSET BASE? Y LIMIT<? DTLB Lookup Paging Ignored HIT/MISS MISS Page-Table Walker [P 40 P 39.P 13 P 12 ] Basu et al. [ISCA 2013] [P 11 P 0 ] 18
19 Direct Segments VA VA cr3 cr3 PA Base Native PA Direct Segments 19
20 Outline Motivation Review: Direct Segments Virtualized Direct Segments Evaluation Methodology Results Summary 20
21 Guest Page Table Modes Nested Page Table 1 2 gva cr3 gpa cr3 hpa Base Guest VMM Dual Virtualized Direct 21
22 Base Virtualized: Translation gva cr3 1 gpt gpa cr3 2 npt hpa Base Virtualized 22
23 Dual Direct: Translation gva cr3 1 gpt Guest Direct Segment gpa cr3 2 npt Host Direct Segment hpa Dual Direct 23
24 VMM Direct: Translation gva cr3 1 gpt gpa cr3 2 npt Host Direct Segment hpa VMM Direct 24
25 Guest Direct: Translation gva cr3 1 Guest Direct Segment gpa cr3 2 npt hpa 25
26 Tradeoffs: Efficiency Properties Dimension of page walk # of mem. accesses for most page walks # of base-bound computation for page walks Base Virtualized Dual Direct VMM Direct Guest Direct 2D 0D 1D 1D
27 Tradeoffs: Compatibility Properties Guest OS modifications VMM modifications Application Category Base Dual VMM Guest Virtualized Direct Direct Direct X X X minimal Any Any Bigmemory Bigmemory 27
28 Tradeoffs: Memory Overcommit Properties Base Virtualized Dual Direct VMM Direct Guest Direct Page Sharing limited limited Ballooning limited limited Guest OS Swapping limited limited VMM Swapping limited limited 28
29 Outline Motivation Review: Direct Segments Virtualized Direct Segments Optimizations Evaluation Methodology Results Summary 29
30 Optimizations Issue 1: Guest/Host memory fragmentation Guest physical memory: Self-ballooning Host physical memory: Compaction Issue 2: Permanent hard memory faults Escape filter to provide alternate translation Bloom filter stores small number of faulty pages Filter checked in parallel with segment registers For more details: Come to the poster 30
31 Outline Motivation Review: Direct Segments Virtualized Direct Segments Optimizations Evaluation Methodology Results Summary 31
32 Methodology Estimate performance of future hardware Measure fraction of TLB misses to segmented memory Measure TLB miss cost with performance counters Estimate performance gain with linear model Prototype Linux v host/guest Qemu-KVM hypervisor Intel 12-core Sandy-bridge with 96GB memory 32
33 +VD GD+ DD +VD GD+ DD +DS GD+ DD +VD GD+ DD EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Results Native Virtual Modeled 60% 800% 50% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 33
34 +VD GD+ DD +VD GD+ DD +DS GD+ DD +VD GD+ DD EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Results Native Virtual Modeled 60% 50% VMM Direct and Guest Direct achieves near-native performance 800% 700% 600% 40% 500% 30% 400% 20% 300% 200% 10% 100% 0% 0% graph500 memcached NPB: CG GUPS 34
35 +VD GD+ DD +VD GD+ DD +DS GD+ DD +VD GD+ DD 0.01% 0.00% 0.01% 0.17% EXECUTION TIME OVERHEAD EXECUTION TIME OVERHEAD 113% 1556% 880% 908% Results Native Virtual Modeled 60% 50% Dual Direct eliminates most of the TLB misses achieving better-than native performance 800% 700% 600% 40% 500% 30% 400% 20% 300% 10% 200% 100% 0% 0% graph500 memcached NPB: CG GUPS 35
36 +VD +VD +VD +VD +VD +VD EXECUTION CYCLE OVERHEAD 83% 88% 103% 60% 70% 280% 149% 160% 82% Results 60% 50% Native Virtual Modeled VMM Direct achieves near-native performance for standard workloads 40% 30% 20% 10% 0% cactusadm canneal GemsFDTD mcf omnetpp streamcluster 36
37 Summary Problem: TLB misses in virtual machines Hardware-virtualized MMU has high overheads Up to 280% overhead Prior Work: Direct Segments unvirtualized case Solution: segmentation to bypass paging Extend Direct Segments for virtualization Three configurations with different tradeoffs Results Near- or better-than-native performance 37
38 Questions? For more details: Come to the poster 38
Virtual Virtual Memory
Virtual Virtual Memory Jason Power 3/20/2015 With contributions from Jayneel Gandhi and Lena Olson 4/17/2015 UNIVERSITY OF WISCONSIN 1 Virtual Machine History 1970 s: VMMs 1997: Disco 1999: VMWare (binary
More informationRedundant Memory Mappings for Fast Access to Large Memories
Redundant Memory Mappings for Fast Access to Large Memories Vasileios Karakostas* 1,2 Jayneel Gandhi* 6 Furkan Ayar 3 Adrián Cristal 1,2,7 Mark D. Hill 6 Kathryn S. McKinley 4 Mario Nemirovsky 5 Michael
More informationAGILE PAGING FOR EFFICIENT MEMORY VIRTUALIZATION
... AGILE PAGING FOR EFFICIENT MEMORY VIRTUALIZATION... VIRTUALIZATION PROVIDES BENEFITS FOR MANY WORKLOADS, BUT THE ASSOCIATED OVERHEAD IS STILL HIGH.THE COST COMES FROM MANAGING TWO LEVELS OF ADDRESS
More informationADDRESS TRANSLATION AND TLB
ADDRESS TRANSLATION AND TLB Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture Overview Announcement Homework 3 submission deadline: Nov.
More informationSystem Virtual Machines
System Virtual Machines Outline Need and genesis of system Virtual Machines Basic concepts User Interface and Appearance State Management Resource Control Bare Metal and Hosted Virtual Machines Co-designed
More informationADDRESS TRANSLATION AND TLB
ADDRESS TRANSLATION AND TLB Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture Overview Announcement Homework 4 submission deadline: Mar.
More informationSystem Virtual Machines
System Virtual Machines Outline Need and genesis of system Virtual Machines Basic concepts User Interface and Appearance State Management Resource Control Bare Metal and Hosted Virtual Machines Co-designed
More informationSmartMD: A High Performance Deduplication Engine with Mixed Pages
SmartMD: A High Performance Deduplication Engine with Mixed Pages Fan Guo 1, Yongkun Li 1, Yinlong Xu 1, Song Jiang 2, John C. S. Lui 3 1 University of Science and Technology of China 2 University of Texas,
More informationVirtual Memory. Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. April 12, 2018 L16-1
Virtual Memory Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. L16-1 Reminder: Operating Systems Goals of OS: Protection and privacy: Processes cannot access each other s data Abstraction:
More informationIncrease KVM Performance/Density
Increase KVM Performance/Density with Hyper-V Memory Enlightenments Interface Chao Peng (chao.p.peng@intel.com) Contributors: Chao Gao, Yi Sun Expectations in Memory Virtualization Space Time High Performance
More informationVirtual Memory. Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. November 15, MIT Fall 2018 L20-1
Virtual Memory Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. L20-1 Reminder: Operating Systems Goals of OS: Protection and privacy: Processes cannot access each other s data Abstraction:
More information1. Creates the illusion of an address space much larger than the physical memory
Virtual memory Main Memory Disk I P D L1 L2 M Goals Physical address space Virtual address space 1. Creates the illusion of an address space much larger than the physical memory 2. Make provisions for
More informationProgress & Challenges for Virtual Memory Management Kathryn S. McKinley
Progress & Challenges for Virtual Memory Management Kathryn S. McKinley Microsoft Research 1! The Storage Gap Petabytes 50,000,000! 40,000,000! 30,000,000! 20,000,000! 10,000,000! 0! Digital Universe
More informationWhat is KVM? KVM patch. Modern hypervisors must do many things that are already done by OSs Scheduler, Memory management, I/O stacks
LINUX-KVM The need for KVM x86 originally virtualization unfriendly No hardware provisions Instructions behave differently depending on privilege context(popf) Performance suffered on trap-and-emulate
More informationLecture 7. Xen and the Art of Virtualization. Paul Braham, Boris Dragovic, Keir Fraser et al. 16 November, Advanced Operating Systems
Lecture 7 Xen and the Art of Virtualization Paul Braham, Boris Dragovic, Keir Fraser et al. Advanced Operating Systems 16 November, 2011 SOA/OS Lecture 7, Xen 1/38 Contents Virtualization Xen Memory CPU
More informationTransparent Hugepage Support
Transparent Hugepage Support Red Hat Inc. Andrea Arcangeli aarcange at redhat.com KVM Forum 2010 Boston Copyright 2010 Red Hat Inc. 9 Aug 2010 Benefit of hugepages Enlarge TLB size TLB is separate for
More informationKnut Omang Ifi/Oracle 6 Nov, 2017
Software and hardware support for Network Virtualization part 1 Knut Omang Ifi/Oracle 6 Nov, 2017 1 Motivation Goal: Introduction to challenges in providing fast networking to virtual machines Prerequisites:
More informationCS 537 Lecture 6 Fast Translation - TLBs
CS 537 Lecture 6 Fast Translation - TLBs Michael Swift 9/26/7 2004-2007 Ed Lazowska, Hank Levy, Andrea and Remzi Arpaci-Dussea, Michael Swift Faster with TLBS Questions answered in this lecture: Review
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Spring 2018 Lecture 16: Virtual Machine Monitors Geoffrey M. Voelker Virtual Machine Monitors 2 Virtual Machine Monitors Virtual Machine Monitors (VMMs) are a hot
More informationCS 5523 Operating Systems: Memory Management (SGG-8)
CS 5523 Operating Systems: Memory Management (SGG-8) Instructor: Dr Tongping Liu Thank Dr Dakai Zhu, Dr Palden Lama, and Dr Tim Richards (UMASS) for providing their slides Outline Simple memory management:
More informationEfficient Synonym Filtering and Scalable Delayed Translation for Hybrid Virtual Caching
Efficient Synonym Filtering and Scalable Delayed Translation for Hybrid Virtual Caching Chang Hyun Park, Taekyung Heo, Jaehyuk Huh School of Computing, KAIST {changhyunpark, tkheo}@calab.kaist.ac.kr, and
More informationOS Virtualization. Why Virtualize? Introduction. Virtualization Basics 12/10/2012. Motivation. Types of Virtualization.
Virtualization Basics Motivation OS Virtualization CSC 456 Final Presentation Brandon D. Shroyer Types of Virtualization Process virtualization (Java) System virtualization (classic, hosted) Emulation
More informationServer Virtualization Approaches
Server Virtualization Approaches Virtual Machine Applications Emulation Replication Composition Emulation: Mix-and-match cross-platform portability Replication: Multiple VMs on single platform Composition:
More informationVirtualization. Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels
Virtualization Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels 1 What is virtualization? Creating a virtual version of something o Hardware, operating system, application, network, memory,
More informationTaking a trip down vsphere memory lane
Taking a trip down vsphere memory lane Memory Management Concepts Memory virtualization - Beyond CPU virtualization the next critical component is Memory virtualization. This involves sharing the physical
More informationVIRTUAL MEMORY II. Jo, Heeseung
VIRTUAL MEMORY II Jo, Heeseung TODAY'S TOPICS How to reduce the size of page tables? How to reduce the time for address translation? 2 PAGE TABLES Space overhead of page tables The size of the page table
More informationAdvanced Systems Security: Virtual Machine Systems
Systems and Internet Infrastructure Security Network and Security Research Center Department of Computer Science and Engineering Pennsylvania State University, University Park PA Advanced Systems Security:
More informationEECS 470. Lecture 16 Virtual Memory. Fall 2018 Jon Beaumont
Lecture 16 Virtual Memory Fall 2018 Jon Beaumont http://www.eecs.umich.edu/courses/eecs470 Slides developed in part by Profs. Austin, Brehob, Falsafi, Hill, Hoe, Lipasti, Shen, Smith, Sohi, Tyson, and
More informationI, J A[I][J] / /4 8000/ I, J A(J, I) Chapter 5 Solutions S-3.
5 Solutions Chapter 5 Solutions S-3 5.1 5.1.1 4 5.1.2 I, J 5.1.3 A[I][J] 5.1.4 3596 8 800/4 2 8 8/4 8000/4 5.1.5 I, J 5.1.6 A(J, I) 5.2 5.2.1 Word Address Binary Address Tag Index Hit/Miss 5.2.2 3 0000
More informationMaster s Thesis! Improvement of the Virtualization Support in the Fiasco.OC Microkernel! Julius Werner!
Master s Thesis! Improvement of the Virtualization Support in the Fiasco.OC Microkernel! Julius Werner! jwerner@cs.tu- berlin.de Technische Universität Berlin! 28.08.2012! Julius Werner (Master s Thesis)!
More informationWhat s Virtual Memory Management. Virtual Memory Management: TLB Prefetching & Page Walk. Memory Management Unit (MMU) Problems to be handled
Virtual Memory Management: TLB Prefetching & Page Walk Yuxin Bai, Yanwei Song CSC456 Seminar Nov 3, 2011 What s Virtual Memory Management Illusion of having a large amount of memory Protection from other
More informationDevirtualizing memory in heterogeneous systems
Devirtualizing memory in heterogeneous systems Swapnil Haria Mark D. Hill Michael M. Swift University of Wisconsin-Madison {swapnilh, markhill, swift} @cs.wisc.edu Abstract Accelerators are increasingly
More informationMulti-level Translation. CS 537 Lecture 9 Paging. Example two-level page table. Multi-level Translation Analysis
Multi-level Translation CS 57 Lecture 9 Paging Michael Swift Problem: what if you have a sparse address space e.g. out of GB, you use MB spread out need one PTE per page in virtual address space bit AS
More informationVirtual Memory, Address Translation
Memory Hierarchy Virtual Memory, Address Translation Slides contents from: Hennessy & Patterson, 5ed Appendix B and Chapter 2 David Wentzlaff, ELE 475 Computer Architecture MJT, High Performance Computing,
More informationVirtual to physical address translation
Virtual to physical address translation Virtual memory with paging Page table per process Page table entry includes present bit frame number modify bit flags for protection and sharing. Page tables can
More informationVirtual Machine Monitors (VMMs) are a hot topic in
CSE 120 Principles of Operating Systems Winter 2007 Lecture 16: Virtual Machine Monitors Keith Marzullo and Geoffrey M. Voelker Virtual Machine Monitors Virtual Machine Monitors (VMMs) are a hot topic
More informationVirtualization History and Future Trends
Virtualization History and Future Trends Christoffer Dall - Candidacy Exam - January 2013 Columbia University - Computer Science Department IBM Mainframe VMs VMware Workstation x86 Hardware Support Virtual
More informationvcache: Architectural Support for Transparent and Isolated Virtual LLCs in Virtualized Environments
vcache: Architectural Support for Transparent and Isolated Virtual LLCs in Virtualized Environments Daehoon Kim *, Hwanju Kim, Nam Sung Kim *, and Jaehyuk Huh * University of Illinois at Urbana-Champaign,
More informationVirtual Memory. CS 351: Systems Programming Michael Saelee
Virtual Memory CS 351: Systems Programming Michael Saelee registers cache (SRAM) main memory (DRAM) local hard disk drive (HDD/SSD) remote storage (networked drive / cloud) previously: SRAM
More informationTopics: Memory Management (SGG, Chapter 08) 8.1, 8.2, 8.3, 8.5, 8.6 CS 3733 Operating Systems
Topics: Memory Management (SGG, Chapter 08) 8.1, 8.2, 8.3, 8.5, 8.6 CS 3733 Operating Systems Instructor: Dr. Turgay Korkmaz Department Computer Science The University of Texas at San Antonio Office: NPB
More informationDISCO and Virtualization
DISCO and Virtualization 1. Announcements: a. Project now due Friday at 9 pm b. Class moving to CS 1325 starting Thursday. 2. Questions from reviews: a. NFS scalability bottleneck? i. Yes, other things
More informationChapter 8: Memory Management. Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging
Chapter 8: Memory Management Background Swapping Contiguous Allocation Paging Segmentation Segmentation with Paging 1 Background Memory management is crucial in better utilizing one of the most important
More informationCS399 New Beginnings. Jonathan Walpole
CS399 New Beginnings Jonathan Walpole Virtual Memory (1) Page Tables When and why do we access a page table? - On every instruction to translate virtual to physical addresses? Page Tables When and why
More informationPortland State University ECE 587/687. Virtual Memory and Virtualization
Portland State University ECE 587/687 Virtual Memory and Virtualization Copyright by Alaa Alameldeen and Zeshan Chishti, 2015 Virtual Memory A layer of abstraction between applications and hardware Programs
More informationVirtual Memory. Patterson & Hennessey Chapter 5 ELEC 5200/6200 1
Virtual Memory Patterson & Hennessey Chapter 5 ELEC 5200/6200 1 Virtual Memory Use main memory as a cache for secondary (disk) storage Managed jointly by CPU hardware and the operating system (OS) Programs
More informationKnut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization:
Software and hardware support for Network Virtualization part 2 Knut Omang Ifi/Oracle 20 Oct, 2015 32 Overview Introduction to virtualization (Virtual machines) Aspects of network virtualization: Virtual
More informationCS 550 Operating Systems Spring Introduction to Virtual Machines
CS 550 Operating Systems Spring 2018 Introduction to Virtual Machines 1 How to share a physical computer Operating systems allows multiple processes/applications to run simultaneously Via process/memory
More informationTransparent Hugepage
Transparent Hugepage Red Hat Inc. Andrea Arcangeli aarcange at redhat.com 11 Nov 2009 Agenda Benefit of hugepages Hugetlbfs troubles Transparent Hugepage objectives Transparent Hugepage possible implementations
More informationCS 152 Computer Architecture and Engineering. Lecture 8 - Address Translation
CS 152 Computer Architecture and Engineering Lecture 8 - Translation Krste Asanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste!
More informationVirtual Memory: From Address Translation to Demand Paging
Constructive Computer Architecture Virtual Memory: From Address Translation to Demand Paging Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology November 12, 2014
More informationChapter 5B. Large and Fast: Exploiting Memory Hierarchy
Chapter 5B Large and Fast: Exploiting Memory Hierarchy One Transistor Dynamic RAM 1-T DRAM Cell word access transistor V REF TiN top electrode (V REF ) Ta 2 O 5 dielectric bit Storage capacitor (FET gate,
More informationPerformance of Various Levels of Storage. Movement between levels of storage hierarchy can be explicit or implicit
Memory Management All data in memory before and after processing All instructions in memory in order to execute Memory management determines what is to be in memory Memory management activities Keeping
More informationVirtualization. Starting Point: A Physical Machine. What is a Virtual Machine? Virtualization Properties. Types of Virtualization
Starting Point: A Physical Machine Virtualization Based on materials from: Introduction to Virtual Machines by Carl Waldspurger Understanding Intel Virtualization Technology (VT) by N. B. Sahgal and D.
More informationVirtualization. ! Physical Hardware Processors, memory, chipset, I/O devices, etc. Resources often grossly underutilized
Starting Point: A Physical Machine Virtualization Based on materials from: Introduction to Virtual Machines by Carl Waldspurger Understanding Intel Virtualization Technology (VT) by N. B. Sahgal and D.
More informationCOMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy
COMPUTER ARCHITECTURE Virtualization and Memory Hierarchy 2 Contents Virtual memory. Policies and strategies. Page tables. Virtual machines. Requirements of virtual machines and ISA support. Virtual machines:
More informationCS 152 Computer Architecture and Engineering. Lecture 8 - Address Translation
CS 152 Computer Architecture and Engineering Lecture 8 - Translation Krste Asanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste!
More informationVirtual Machine Virtual Machine Types System Virtual Machine: virtualize a machine Container: virtualize an OS Program Virtual Machine: virtualize a process Language Virtual Machine: virtualize a language
More informationAddress Translation. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Address Translation Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics How to reduce the size of page tables? How to reduce the time for
More informationLarge Pages and Lightweight Memory Management in Virtualized Environments: Can You Have it Both Ways?
Large Pages and Lightweight Memory Management in Virtualized Environments: Can You Have it Both Ways? Binh Pham Ján Veselý Gabriel H. Loh Abhishek Bhattacharjee Department of Computer Science AMD Research
More informationPerformance Aspects of x86 Virtualization
TA68 Performance Aspects of x86 Virtualization Ole Agesen Principal Engineer VMware Talk Outline Part 1. Problem statement Part 2. Instruction set virtualization techniques Part 3. Memory virtualization
More informationCS 333 Introduction to Operating Systems. Class 11 Virtual Memory (1) Jonathan Walpole Computer Science Portland State University
CS 333 Introduction to Operating Systems Class 11 Virtual Memory (1) Jonathan Walpole Computer Science Portland State University Virtual addresses Virtual memory addresses (what the process uses) Page
More informationXen and the Art of Virtualization. Nikola Gvozdiev Georgian Mihaila
Xen and the Art of Virtualization Nikola Gvozdiev Georgian Mihaila Outline Xen and the Art of Virtualization Ian Pratt et al. I. The Art of Virtualization II. Xen, goals and design III. Xen evaluation
More informationHSPT: Practical Implementation and Efficient Management of Embedded Shadow Page Tables for Cross-ISA System Virtual Machines
HSPT: Practical Implementation and Efficient Management of Embedded Shadow Page Tables for Cross-ISA System Virtual Machines Zhe Wang 1,2, Jianjun Li 1, Chenggang Wu 1, Dongyan Yang 3, Zhenjiang Wang 1,
More informationAdvanced Operating Systems (CS 202) Virtualization
Advanced Operating Systems (CS 202) Virtualization Virtualization One of the natural consequences of the extensibility research we discussed What is virtualization and what are the benefits? 2 Virtualization
More informationCourse Outline. Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems
Course Outline Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems 1 Today: Memory Management Terminology Uniprogramming Multiprogramming Contiguous
More informationVirtual Memory. User memory model so far:! In reality they share the same memory space! Separate Instruction and Data memory!!
Virtual Memory User memory model so far:! Separate Instruction and Data memory!! In reality they share the same memory space!!! 0x00000000 User space Instruction memory 0x7fffffff Data memory MicroComuter
More informationCS 153 Design of Operating Systems Winter 2016
CS 153 Design of Operating Systems Winter 2016 Lecture 16: Memory Management and Paging Announcement Homework 2 is out To be posted on ilearn today Due in a week (the end of Feb 19 th ). 2 Recap: Fixed
More informationVirtual memory Paging
Virtual memory Paging M1 MOSIG Operating System Design Renaud Lachaize Acknowledgments Many ideas and slides in these lectures were inspired by or even borrowed from the work of others: Arnaud Legrand,
More informationVirtual Memory II CSE 351 Spring
Virtual Memory II CSE 351 Spring 2018 https://xkcd.com/1495/ Virtual Memory (VM) Overview and motivation VM as a tool for caching Address translation VM as a tool for memory management VM as a tool for
More informationVirtual Machines. Part 2: starting 19 years ago. Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.
Virtual Machines Part 2: starting 19 years ago Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved. Operating Systems In Depth IX 2 Copyright 2018 Thomas W. Doeppner.
More informationAdvanced Systems Security: Virtual Machine Systems
Systems and Internet Infrastructure Security Network and Security Research Center Department of Computer Science and Engineering Pennsylvania State University, University Park PA Advanced Systems Security:
More informationCHAPTER 16 - VIRTUAL MACHINES
CHAPTER 16 - VIRTUAL MACHINES 1 OBJECTIVES Explore history and benefits of virtual machines. Discuss the various virtual machine technologies. Describe the methods used to implement virtualization. Show
More informationLecture 21: Virtual Memory. Spring 2018 Jason Tang
Lecture 21: Virtual Memory Spring 2018 Jason Tang 1 Topics Virtual addressing Page tables Translation lookaside buffer 2 Computer Organization Computer Processor Memory Devices Control Datapath Input Output
More informationNested EPT to Make Nested VMX Faster. Red Hat Author Gleb Natapov October 21, 2013
Nested EPT to Make Nested VMX Faster Red Hat Author Gleb Natapov October 21, 2013 Section 1 Background Shadow Paging Background 3 Shadow Paging Background 4 Shadow Paging Background 5 Shadow Paging Background
More informationChapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition
Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation
More informationCS 152 Computer Architecture and Engineering. Lecture 9 - Address Translation
CS 152 Computer Architecture and Engineering Lecture 9 - Address Translation Krste Asanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste!
More informationCHAPTER 8: MEMORY MANAGEMENT. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 8: MEMORY MANAGEMENT By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the
More informationQuartzV: Bringing Quality of Time to Virtual Machines
QuartzV: Bringing Quality of Time to Virtual Machines Sandeep D souza and Raj Rajkumar Carnegie Mellon University IEEE RTAS @ CPS Week 2018 1 A Shared Notion of Time Coordinated Actions Ordering of Events
More information5 Solutions. Solution a. no solution provided. b. no solution provided
5 Solutions Solution 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 S2 Chapter 5 Solutions Solution 5.2 5.2.1 4 5.2.2 a. I, J b. B[I][0] 5.2.3 a. A[I][J] b. A[J][I] 5.2.4 a. 3596 = 8 800/4 2 8 8/4 + 8000/4 b.
More informationOperating Systems. 09. Memory Management Part 1. Paul Krzyzanowski. Rutgers University. Spring 2015
Operating Systems 09. Memory Management Part 1 Paul Krzyzanowski Rutgers University Spring 2015 March 9, 2015 2014-2015 Paul Krzyzanowski 1 CPU Access to Memory The CPU reads instructions and reads/write
More informationGCMA: Guaranteed Contiguous Memory Allocator. SeongJae Park
GCMA: Guaranteed Contiguous Memory Allocator SeongJae Park These slides were presented during The Kernel Summit 2018 (https://events.linuxfoundation.org/events/linux-kernel-summit-2018/)
More informationExtended Page Tables (EPT) A VMM must protect host physical memory Multiple guest operating systems share the same host physical memory VMM typically implements protections through page-table shadowing
More information21 Lecture: More VM Announcements From last time: Virtual Memory (Fotheringham, 1961)
21 Lecture: More VM Outline: Announcements From last time: Virtual Memory (Fotheringham, 1961) What it s all about Translation Logistics(HERE) Where to keep the page table? Possible approaches to dealing
More informationCS307 Operating Systems Main Memory
CS307 Main Memory Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University Spring 2018 Background Program must be brought (from disk) into memory and placed within a process
More informationTHE DYNAMIC GRANULARITY MEMORY SYSTEM
THE DYNAMIC GRANULARITY MEMORY SYSTEM Doe Hyun Yoon IIL, HP Labs Michael Sullivan Min Kyu Jeong Mattan Erez ECE, UT Austin MEMORY ACCESS GRANULARITY The size of block for accessing main memory Often, equal
More informationUnderstanding The Performance of DPDK as a Computer Architect
Understanding The Performance of DPDK as a Computer Architect XIAOBAN WU *, PEILONG LI *, YAN LUO *, LIANG- MIN (LARRY) WANG +, MARC PEPIN +, AND JOHN MORGAN + * UNIVERSITY OF MASSACHUSETTS LOWELL + INTEL
More informationCS 152 Computer Architecture and Engineering. Lecture 9 - Address Translation
CS 152 Computer Architecture and Engineering Lecture 9 - Address Translation Krste Asanovic Electrical Engineering and Computer Sciences University of California at Berkeley http://www.eecs.berkeley.edu/~krste
More informationVirtual Memory. Motivation:
Virtual Memory Motivation:! Each process would like to see its own, full, address space! Clearly impossible to provide full physical memory for all processes! Processes may define a large address space
More informationShared Virtual Memory (SVM) in Xen. Feng Wu
Shared Virtual Memory (SVM) in Xen Feng Wu feng.wu@intel.com 1 Agenda Motivation Now and Future SVM in Hardware Why Xen needs SVM What needs to do in Xen Summary 2 Motivation OpenCL 2.0 supports sharing
More informationSMD149 - Operating Systems - Memory
SMD149 - Operating Systems - Memory Roland Parviainen November 8, 2005 1/57 Outline Overview Mostly historical management Paging 2/57 Overview 3/57 Memory hierarchy Memory divided into tiers Main memory
More informationVirtual Memory. Kevin Webb Swarthmore College March 8, 2018
irtual Memory Kevin Webb Swarthmore College March 8, 2018 Today s Goals Describe the mechanisms behind address translation. Analyze the performance of address translation alternatives. Explore page replacement
More informationCS5460: Operating Systems Lecture 14: Memory Management (Chapter 8)
CS5460: Operating Systems Lecture 14: Memory Management (Chapter 8) Important from last time We re trying to build efficient virtual address spaces Why?? Virtual / physical translation is done by HW and
More informationCS399 New Beginnings. Jonathan Walpole
CS399 New Beginnings Jonathan Walpole Memory Management Memory Management Memory a linear array of bytes - Holds O.S. and programs (processes) - Each cell (byte) is named by a unique memory address Recall,
More informationPage Tables. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Page Tables Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong (jinkyu@skku.edu)
More informationImplementation of Direct Segments on a RISC-V Processor
ABSTRACT Nikhita Kunati Department of Computer Sciences University of Wisconsin-Madison Madison, WI, USA kunati@cs.wisc.edu Page-based virtual memory has been ubiquitous for decades and provides a secure
More informationSmartMD: A High Performance Deduplication Engine with Mixed Pages
SmartMD: A High Performance Deduplication Engine with Mixed Pages Fan Guo, University of Science and Technology of China; Yongkun Li, University of Science and Technology of China; Collaborative Innovation
More informationVirtual Memory: From Address Translation to Demand Paging
Constructive Computer Architecture Virtual Memory: From Address Translation to Demand Paging Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology November 9, 2015
More informationCOLORADO, USA; 2 Usov Aleksey Yevgenyevich - Technical Architect, RUSSIAN GOVT INSURANCE, MOSCOW; 3 Kropachev Artemii Vasilyevich Manager,
MAIN ASPECTS OF THE MODERN INFORMATION SYSTEMS HARDWARE RESOURCES VIRTUALIZATION METHODOLOGY Zuev D.O. 1, Usov A.Y. 2, Kropachev A.V. 3, Mostovshchikov D.N. 4 1 Zuev Denis Olegovich - Independent Consultant,
More informationChapter 8: Memory-Management Strategies
Chapter 8: Memory-Management Strategies Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and
More informationVirtualization and Virtual Machines. CS522 Principles of Computer Systems Dr. Edouard Bugnion
Virtualization and Virtual Machines CS522 Principles of Computer Systems Dr. Edouard Bugnion Virtualization and Virtual Machines 2 This week Introduction, definitions, A short history of virtualization
More information