CacheMind: Fast Performance Recovery Using a Virtual Machine Monitor Kenichi Kourai Kyushu Institute of Technology, Japan.

Slides:



Advertisements
Similar presentations
Remus: High Availability via Asynchronous Virtual Machine Replication
Advertisements

Live migration of Virtual Machines Nour Stefan, SCPD.
Difference Engine: Harnessing Memory Redundancy in Virtual Machines by Diwaker Gupta et al. presented by Jonathan Berkhahn.
Live Migration of Virtual Machines Christopher Clark, Keir Fraser, Steven Hand, Jacob Gorm Hansen, Eric Jul, Christian Limpach, Ian Pratt, Andrew Warfield.
Fast and Safe Performance Recovery on OS Reboot Kenichi Kourai Kyushu Institute of Technology.
A Fast Rejuvenation Technique for Server Consolidation with Virtual Machines Kenichi Kourai Shigeru Chiba Tokyo Institute of Technology.
IO-Lite: A Unified Buffering and Caching System By Pai, Druschel, and Zwaenepoel (1999) Presented by Justin Kliger for CS780: Advanced Techniques in Caching.
Exploiting Data Deduplication to Accelerate Live Virtual Machine Migration Xiang Zhang 1,2, Zhigang Huo 1, Jie Ma 1, Dan Meng 1 1. National Research Center.
Kenichi Kourai (Kyushu Institute of Technology) Takeshi Azumi (Tokyo Institute of Technology) Shigeru Chiba (Tokyo University) A Self-protection Mechanism.
Efficient VM Introspection in KVM and Performance Comparison with Xen
Chapter 11: File System Implementation
A Secure System-wide Process Scheduling across Virtual Machines Hidekazu Tadokoro (Tokyo Institute of Technology) Kenichi Kourai (Kyushu Institute of Technology)
File System Implementation
Nooks: an architecture for safe device drivers Mike Swift, The Wild and Crazy Guy, Hank Levy and Susan Eggers.
CS 333 Introduction to Operating Systems Class 18 - File System Performance Jonathan Walpole Computer Science Portland State University.
File System Structure §File structure l Logical storage unit l Collection of related information §File system resides on secondary storage (disks). §File.
Remus: High Availability via Asynchronous Virtual Machine Replication.
Web-Conscious Storage Management for Web Proxies Evangelos P. Markatos, Dionisios N. Pnevmatikatos, Member, IEEE, Michail D. Flouris, and Manolis G. H.
File System Variations and Software Caching May 19, 2000 Instructor: Gary Kimura.
PRASHANTHI NARAYAN NETTEM.
Fast and Correct Performance Recovery of Operating Systems Using a Virtual Machine Monitor Kenichi Kourai Kyushu Institute of Technology, Japan.
Virtual Network Servers. What is a Server? 1. A software application that provides a specific one or more services to other computers  Example: Apache.
Presented by : Ran Koretzki. Basic Introduction What are VM’s ? What is migration ? What is Live migration ?
Highly Available ACID Memory Vijayshankar Raman. Introduction §Why ACID memory? l non-database apps: want updates to critical data to be atomic and persistent.
IMPROVING THE RELIABILITY OF COMMODITY OPERATING SYSTEMS Michael M. Swift Brian N. Bershad Henry M. Levy University of Washington.
N-Tier Client/Server Architectures Chapter 4 Server - RAID Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept RAID – Redundant Array.
HyperSpector: Virtual Distributed Monitoring Environments for Secure Intrusion Detection Kenichi Kourai Shigeru Chiba Tokyo Institute of Technology.
Kenichi Kourai (Kyushu Institute of Technology) Takuya Nagata (Kyushu Institute of Technology) A Secure Framework for Monitoring Operating Systems Using.
Distributed Shared Memory: A Survey of Issues and Algorithms B,. Nitzberg and V. Lo University of Oregon.
Secure Out-of-band Remote Management Using Encrypted Virtual Serial Consoles in IaaS Clouds Kenichi Kourai Tatsuya Kajiwara Kyushu Institute of Technology.
1 Geiger: Monitoring the Buffer Cache in a Virtual Machine Environment Stephen T. Jones Andrea C. Arpaci-Dusseau Remzi H. Arpaci-Dusseau Department of.
Lecture 19: Virtual Memory
Zero-copy Migration for Lightweight Software Rejuvenation of Virtualized Systems Kenichi Kourai Hiroki Ooba Kyushu Institute of Technology.
A Measurement Based Memory Performance Evaluation of High Throughput Servers Garba Isa Yau Department of Computer Engineering King Fahd University of Petroleum.
Supporting Multi-Processors Bernard Wong February 17, 2003.
Dynamic and Secure Application Consolidation with Nested Virtualization and Library OS in Cloud Kouta Sannomiya and Kenichi Kourai (Kyushu Institute of.
Free Space Management.
File System Implementation
Synchronized Co-migration of Virtual Machines for IDS Offloading in Clouds Kenichi Kourai and Hisato Utsunomiya Kyushu Institute of Technology, Japan.
Chapter 11: File System Implementation Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 11: File System Implementation Chapter.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition File System Implementation.
CS333 Intro to Operating Systems Jonathan Walpole.
Trusted Passages: Managing Trust Properties of Open Distributed Overlays Faculty: Mustaque Ahamad, Greg Eisenhauer, Wenke Lee and Karsten Schwan PhD Students:
Improving the Reliability of Commodity Operating Systems Michael M. Swift, Brian N. Bershad, Henry M. Levy Presented by Ya-Yun Lo EECS 582 – W161.
Taeho Kgil, Trevor Mudge Advanced Computer Architecture Laboratory The University of Michigan Ann Arbor, USA CASES’06.
RAID TECHNOLOGY RASHMI ACHARYA CSE(A) RG NO
Free Transactions with Rio Vista Landon Cox April 15, 2016.
Secure Offloading of Legacy IDSes Using Remote VM Introspection in Semi-trusted IaaS Clouds Kenichi Kourai Kazuki Juda Kyushu Institute of Technology.
Split Migration of Large Memory Virtual Machines
Translation Lookaside Buffer
Jonathan Walpole Computer Science Portland State University
Chapter 1: Introduction
Kenichi Kourai Hiroki Ooba Kyushu Institute of Technology, Japan
Introduction to Operating Systems
Lecture 28: Virtual Memory-Address Translation
Sho Kawahara and Kenichi Kourai Kyushu Institute of Technology, Japan
I'm Kenichi Kourai from Kyushu Institute of Technology.
IMPROVING THE RELIABILITY OF COMMODITY OPERATING SYSTEMS
Preventing Performance Degradation on Operating System Reboots
Overview: File system implementation (cont)
Morgan Kaufmann Publishers Memory Hierarchy: Virtual Memory
Resource Cages: A New Abstraction of the Hypervisor for Performance Isolation Considering IDS Offloading Kenichi Kourai*, Sungho Arai**, Kousuke Nakamura*,
DESIGN AND IMPLEMENTATION OF THE SUN NETWORK FILESYSTEM
CSE 542: Operating Systems
4.3 Virtual Memory.
Kenichi Kourai Kyushu Institute of Technology
T. Kashiwagi, M. Suetake , K. Kourai (Kyushu Institute of Technology)
Low-cost and Fast Failure Recovery Using In-VM Containers in Clouds
Consistent Offline Update of Suspended Virtual Machines in Clouds
Efficient Migration of Large-memory VMs Using Private Virtual Memory
Presentation transcript:

CacheMind: Fast Performance Recovery Using a Virtual Machine Monitor Kenichi Kourai Kyushu Institute of Technology, Japan

OS Recovery  OS reboot is a final but powerful recovery technique  For recovery from OS crashes  Against Mandelbugs  A rebooted OS rarely crashes again  For software rejuvenation  Against aging-related bugs  A rebooted OS restores its normal state recovered OS reboot memory leak crash

Performance Degradation (1/2)  OS reboot degrades the performance of file accesses  The file cache on memory is lost  Disk access increases due to frequent cache misses  It takes long time to fill the file cache  Reading file blocks from a disk is slow  Most of free memory is used for the file cache file cache reboot slow disk

Performance Degradation (2/2)  Disk access also degrades the performance of the other virtual machines (VMs)  VMs share a physical disk  Frequent disk access occupies the bandwidth  Prefetching makes the situation worse  Burst of disk access VM disk rebooted VM OS

Performance Recovery is Needed  OS recovery does not complete until the performance is also recovered  Traditional OS reboot restores only the functionalities  Fast reboot techniques have been proposed

Warm-cache Reboot  A new OS recovery mechanism with fast performance recovery  It preserves the file cache during OS reboot  An OS can reuse it after the reboot  It guarantees the consistency of the file cache  Using the virtual machine monitor (VMM) file cache reboot file cache VMM discardVM corrupted cache

Reusing the File Cache  Collaboration between an OS and the VMM  The VMM re-allocates the same physical memory to a rebooted VM  A rebooted OS reserves the memory pages used for the file cache  Obtaining meta data from the VMM file cache VMM reboot file cache re-allocate reserve deallocate VM

Cache Consistency  Our definition  Consistent if the contents of the file cache are the same as those of disks  Consistent when a file block is read from a disk  Inconsistent when the file cache is modified  Consistent when it is written back to a disk disk file cache modify read write back VM

Maintaining Cache Reusability  The warm-cache reboot allows an OS to reuse only consistent file cache  The VMM is suitable for maintaining the reusability  It is isolated from an OS  It can mediate all disk accesses  It can track all modification to cache pages VMM VM disk modify cache pages file cache

Reusability Management (1/3)  The VMM makes a cache page reusable after it reads data from a disk  It protects the page before the read  To detect page corruption by an OS during the read  The VMM can still write data to the page VMM read VM read request protectreadreusable read request possible corruption disk

Reusability Management (2/3)  The VMM makes a cache page non-reusable before an OS modifies its contents  It unprotects the page at the same time  To enable the OS to modify the page VMM VM modify request unprotect non-reusable & unprotect modify request write possible corruption

Reusability Management (3/3)  The VMM makes a cache page reusable again after it writes data in the page to a disk  It protects the page before the write  To detect page corruption during the write VMM write VM write request protectwritereusable write request possible corruption disk

Implementation  CacheMind  Based on Xen/Linux  Per-VM data  Hash table from file blocks to cache pages  Domain U adds/removes  Bitmap for reusing cache pages  Domain 0/VMM change blkbackblkfront domain 0domain U VMM disk Per-VM data

Experiments  Purposes  To show that the warm-cache reboot achieves fast performance recovery  File access, web server  To confirm that it does not reuse inconsistent file cache  fault injection Server CPU: 2 dual-core Opteron Memory: 12 GB Disk: Ultra 320 SCSI NIC: Gigabit Ethernet Client CPU: 2 Core 2 Quad Memory: 4 GB NIC: Gigabit Ethernet

Throughput of File Reads  We measured the read throughput of a 1-GB file  All file blocks were on the file cache before rebootafter reboot Our reboot achieved better performance 16% degradation at maximum

Throughput of a Web Server  We measured the changes of the throughput during OS reboot 60% degradation for 90 seconds 5% degradation for 60 seconds

Fault Injection (1/2)  We measured inconsistent cache reuses  We injected various faults into the OS kernel  First, we disabled the consistency mechanism The file cache is often corrupted

Fault Injection (2/2)  Next, we enabled the consistency mechanism  Most of reboots did not reuse inconsistent cache  Reused file cache was inconsistent only for DST  Ext3 failed to write back  Faults were injected into ext3  The file cache was not corrupted  Reusing it is correct

Related Work  Rio File Cache [Chen et al.’96]  Reusing dirty file cache after OS crash  Relying on an OS  RootHammer [Kourai et al.’07]  Preserving VMs during VMM reboot  Hybrid Hard Drive [Samsung&Microsoft], Turbo Memory [Intel]  Including large non-volatile disk cache

Conclusion  We proposed the warm-cache reboot  It achieves fast performance recovery by reusing the file cache  16% degradation at maximum  The VMM maintains consistency of the file cache  Consistent, or not-corrupted at least  Future work  Overhead measurement of the consistency mechanism