Goal-Oriented Buffer Management Revisited Kurt P. Brown, Michael J. Carey, Miron Livny Presented by Mike Nie.

Slides:



Advertisements
Similar presentations
QoS-based Management of Multiple Shared Resources in Dynamic Real-Time Systems Klaus Ecker, Frank Drews School of EECS, Ohio University, Athens, OH {ecker,
Advertisements

Virtual Memory (II) CSCI 444/544 Operating Systems Fall 2008.
Virtual Memory: Page Replacement
Chapter 4 Memory Management Page Replacement 补充:什么叫页面抖动?
ARC: A SELF-TUNING, LOW OVERHEAD REPLACEMENT CACHE
Replication Strategies in Unstructured Peer-to-Peer Networks Edith Cohen Scott Shenker This is a modified version of the original presentation by the authors.
Operating Systems Review.
1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Systems Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin Network Disks University.
Kernel memory allocation
Allocation of Frames Each process needs minimum number of pages
Page 15/4/2015 CSE 30341: Operating Systems Principles Allocation of Frames  How should the OS distribute the frames among the various processes?  Each.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Lecture 15: Background Information for the VMWare ESX Memory Management.
Virtual Memory Introduction to Operating Systems: Module 9.
McGraw-Hill Ryerson Copyright © 2011 McGraw-Hill Ryerson Limited. Adapted by Peter Au, George Brown College.
CloudScale: Elastic Resource Scaling for Multi-Tenant Cloud Systems Zhiming Shen, Sethuraman Subbiah, Xiaohui Gu, John Wilkes.
Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale 4th IEEE International Conference.
SLA-aware Virtual Resource Management for Cloud Infrastructures
Instructor: Umar KalimNUST Institute of Information Technology Operating Systems Virtual Memory.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
A Heuristic Bidding Strategy for Multiple Heterogeneous Auctions Patricia Anthony & Nicholas R. Jennings Dept. of Electronics and Computer Science University.
1 Database Buffer Management Yanlei Diao UMass Amherst Feb 20, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
Data Broadcast in Asymmetric Wireless Environments Nitin H. Vaidya Sohail Hameed.
1 Abstract This paper presents a novel modification to the classical Competitive Learning (CL) by adding a dynamic branching mechanism to neural networks.
1 PATH: Page Access Tracking Hardware to Improve Memory Management Reza Azimi, Livio Soares, Michael Stumm, Tom Walsh, and Angela Demke Brown University.
Instructor: Umar KalimNUST Institute of Information Technology Operating Systems Revisiting Virtual Memory.
1 Distributed Scheduling In Sombrero, A Single Address Space Distributed Operating System Milind Patil.
Effective Gaussian mixture learning for video background subtraction Dar-Shyang Lee, Member, IEEE.
Virtual Memory:Part 2 Kashyap Sheth Kishore Putta Bijal Shah Kshama Desai.
OS Spring’04 Virtual Memory: Page Replacement Operating Systems Spring 2004.
A. Frank - P. Weisberg Operating Systems Virtual Memory Policies.
Proteus: Power Proportional Memory Cache Cluster in Data Centers Shen Li, Shiguang Wang, Fan Yang, Shaohan Hu, Fatemeh Saremi, Tarek Abdelzaher.
Mem. Hier. CSE 471 Aut 011 Evolution in Memory Management Techniques In early days, single program run on the whole machine –Used all the memory available.
03/29/2004CSCI 315 Operating Systems Design1 Page Replacement Algorithms (Virtual Memory)
Admission Control and Dynamic Adaptation for a Proportional-Delay DiffServ-Enabled Web Server Yu Cai.
Layers of a DBMS Query optimization Execution engine Files and access methods Buffer management Disk space management Query Processor Query execution plan.
A Self-tuning Page Cleaner for the DB2 Buffer Pool Wenguang Wang Rick Bunt Department of Computer Science University of Saskatchewan.
Continuous resource monitoring for self-predicting DBMS Dushyanth Narayanan 1 Eno Thereska 2 Anastassia Ailamaki 2 1 Microsoft Research-Cambridge, 2 Carnegie.
Modularizing B+-trees: Three-Level B+-trees Work Fine Shigero Sasaki* and Takuya Araki NEC Corporation * currently with 1st Nexpire Inc.
© 2006 IBM Corporation Adaptive Self-Tuning Memory in DB2 Adam Storm, Christian Garcia-Arellano, Sam Lightstone – IBM Toronto Lab Yixin Diao, M. Surendra.
Page 19/17/2015 CSE 30341: Operating Systems Principles Optimal Algorithm  Replace page that will not be used for longest period of time  Used for measuring.
Optimal n fe Tian-Li Yu & Kai-Chun Fan. n fe n fe = Population Size × Convergence Time n fe is one of the common used metrics to measure the performance.
Approximating Hit Rate Curves using Streaming Algorithms Nick Harvey Joint work with Zachary Drudi, Stephen Ingram, Jake Wires, Andy Warfield TexPoint.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
Replication Strategies in Unstructured Peer-to-Peer Networks Edith CohenScott Shenker Some slides are taken from the authors’ original presentation.
Detecting Targeted Attacks Using Shadow Honeypots Authors: K.G. Anagnostakis, S. Sidiroglou, P. Akritidis, K. Xinidis, E. Markatos, A.D. Keromytis Published:
STA Lecture 181 STA 291 Lecture 18 Exam II Next Tuesday 5-7pm Memorial Hall (Same place) Makeup Exam 7:15pm – 9:15pm Location TBA.
1 Virtual Memory Chapter 9. 2 Resident Set Size n Fixed-allocation policy u Allocates a fixed number of frames that remains constant over time F The number.
Design of Flash-Based DBMS: An In-Page Logging Approach Sang-Won Lee and Bongki Moon Presented by Chris Homan.
A Process Control Screen for Multiple Stream Processes An Operator Friendly Approach Richard E. Clark Process & Product Analysis.
Operating Systems CMPSC 473 Virtual Memory Management (3) November – Lecture 20 Instructor: Bhuvan Urgaonkar.
1 Multi-Objective Portfolio Optimization Jeremy Eckhause AMSC 698S Professor S. Gabriel 6 December 2004.
Virtual Memory The memory space of a process is normally divided into blocks that are either pages or segments. Virtual memory management takes.
BlinkDB: Queries with Bounded Errors and Bounded Response Times on Very Large Data ACM EuroSys 2013 (Best Paper Award)
Exploiting Group Recommendation Functions for Flexible Preferences.
CPSC 404 Assignment #1, Winter 2008 Term 2. Due: Wednesday, Feb 4, by 5 pm. Laks V.S. Lakshmanan.
Power Analysis of Embedded Software : A Fast Step Towards Software Power Minimization 指導教授 : 陳少傑 教授 組員 : R 張馨怡 R 林秀萍.
Page Buffering, I. Pages to be replaced are kept in main memory for a while to guard against poorly performing replacement algorithms such as FIFO Two.
Transforming Policies into Mechanisms with Infokernel Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Nathan C. Burnett, Timothy E. Denehy, Thomas J.
1 Cache-Oblivious Query Processing Bingsheng He, Qiong Luo {saven, Department of Computer Science & Engineering Hong Kong University of.
Memory Resource Management in VMware ESX Server By Carl A. Waldspurger Presented by Clyde Byrd III (some slides adapted from C. Waldspurger) EECS 582 –
SDN Network Updates Minimum updates within a single switch
Memshare: a Dynamic Multi-tenant Key-value Cache
Memory Management for Scalable Web Data Servers
TLC: A Tag-less Cache for reducing dynamic first level Cache Energy
Lecture 40 Syed Mansoor Sarwar
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Operating Systems CMPSC 473
Lecture 41 Syed Mansoor Sarwar
Virtual Memory: Working Sets
Feedback Control Real-time Scheduling
Presentation transcript:

Goal-Oriented Buffer Management Revisited Kurt P. Brown, Michael J. Carey, Miron Livny Presented by Mike Nie

Agenda  Goal-Oriented Basics  Criteria for Success  Previous Approaches  Class Fencing  Experiments and Results  Conclusion and Discussion

Goal-Oriented Basics  This paper focus on the control of response time of a specific workload.  Knob: Disk buffer memory allocation. K Target DBMS response time goal observed response time memory allocation adjustment

Goal-Oriented Memory Allocation  Definition: “ For each class with an average response time goal, a memory allocation must be found such that its observed response time is as close as possible to its goal. ”  How it works? More buffer memory -> high hit rate High hit rate -> low response time

Criteria for Success - I  Accuracy Observed average response time should be close to its goal.  Responsiveness The number of knob adjustment to the goal should be minimum.  Stability The variance of observed average response time should be small.

Criteria for Success - II  Overhead The controller should minimize the resource it consumes.  Robustness The system should handle a wide range of workloads.  Practicality Make fair assumptions about workload and DBMS in general.

Goal-Oriented Buffer Allocation Manager Architecture  Response time estimator Fn: hit rate -> est. response time  Hit rate estimator Fn: memory allocation -> est. hit rate  Buffer allocation mechanism A mechanism to divide up memory between workloads.  Inverse the functions to calculate buffer allocation plan. Goal res. Time -> hit rate -> memory allocation

Dynamic Tuning  Response time estimator: R est = (1.0-HIT est (M)) * D  Hit rate estimator: HIT est =1 - a/M b  Buffer allocation mechanism: Partation buffer pool based M calculated above for each class.

Dynamic Tuning Issues  Overshoot  Low responsiveness  No shared data between workloads

Fragment Fencing - I  Response time estimator: Response time and buffer miss rate are directly proportional.  Hit rate estimator: HIT target = 1.0-(M obsv *(R goal /R obsv ))  Goal: determine the minimum number of pages that must be in memory to achieve an overall target hit rate for the class.

Fragment Fencing - II  Buffer allocation mechanism Passive allocation  Issues: Having trouble when fragment is not uniform. High overhead due to passive allocation mechanism.

Class Fencing - Hit Rate Concavity  Concavity theorem: Regardless of the database reference pattern, hit rate as a function of buffer memory allocation is a concave function under an optimal replacement policy.  Empirical study shows that modern page replacement policy are good enough, no knees!

Class Fencing - Hit Rate Estimator

Class Fencing ’ s - Memory Allocation  A compromise between 2 previous approaches  Local buffer manager VS global buffer manager, shared disk-page-to-buffer-frame table  poolSize, the max. number of buffer frames, is determined by hit rate estimator for one class.  existing DBMS replacement policy applied when demanding pages.

Sharing Between Classes  Sharing: one class can reference a frame outside its fence.  poolSize represents lower bound on the number of frames used by one class, whereas hit rate estimator works with total number of frames used the class.  nonLocal[C] = bufSize – poolSize[C] p = (inUse[C] - numLocal[C]) / nonLocal[C] inUse[C] est = poolSize[C] + △ poolSize + p * (nonLocal[C] - △ poolSize)

Experiments and Results  TPC-C and DBMIN Q2 Goals for Q2 only Goals for TPC-C only Goals for Q2 and TPC-C  DBMIN Q2 and DBMIN Q3 Goals for Q2 only Goals for Q2 and Q3

Conclusion  An improvement of the two previous approaches  Stable and accurate HIGH responsiveness  Low overhead, allow sharing  Robust

Discussion  Why the goal of stability is in conflict of responsiveness?  For class fencing when the hit rate have knees, how do we find the intercept point of HT and hit rate curve?  Is it always possible that the hit rate estimator algorithm can converge to the correct point?