Online Caching. Jiazhong Nie directed by Prof. Manfred Warmuth SOE UC, Santa Cruz. May 16, jiazhong (UCSC) May 16, / 35

Size: px
Start display at page:

Download "Online Caching. Jiazhong Nie directed by Prof. Manfred Warmuth SOE UC, Santa Cruz. May 16, jiazhong (UCSC) May 16, / 35"

Transcription

1 Online Caching Jiazhong Nie directed by Prof. Manfred Warmuth SOE UC, Santa Cruz May 16, 2012 jiazhong (UCSC) May 16, / 35

2 Table of Contents Motivation 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

3 Motivation Motivations of this research How to measure onlineness of sequence? Problem My algorithm works on my data Pass to somebody else and it does not work on their data Fix: Design expensive comparator that is computed off-line Compare cheap online algorithms against comparator on given sequence jiazhong (UCSC) May 16, / 35

4 Motivation What is a fair comparator? Comparator can be based on somewhat unreasonable resources How to measure generalization performance of online algorithm Batch: split into training and test set Online: how to split? Two main examples: Disk spindown problem Caching problem jiazhong (UCSC) May 16, / 35

5 Table of Contents Caching Problem 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

6 Caching Problem Caching Problem Serve requests using a cache of limited size Policy Which cached request to evict to make room for missed request 12 base policies / experts LRU, RAND, FIFO, LIFO, MRU, LFU, MFU, SIZE, GDS, GD*, GDSF, LFUDA jiazhong (UCSC) May 16, / 35

7 Caching Problem Switching between Policies State = content of cache Switch from cache A to B: - charge # of refetched requests needed to switch from A to B Partition with switching policies # of misses = 68 partition of requests switching policies SIZE GDS LRU # of refetches = 34 jiazhong (UCSC) May 16, / 35

8 Caching Problem BestRefetch Curve BestRefetch(R) = minimum miss rate achievable by any partition with refetch rate R miss rate = # of misses over # of total requests refetch rate = # of refetches over # of total requests union of baselines = miss rate of the union of 12 baseline caches L shape decrease Sign of onlineness BestFix BestRefetch Curve Union of Baselines 0.05 miss rate jiazhong (UCSC) May 16, / 35 refetch rate

9 Table of Contents Master Policies 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

10 Master Policies Combining Policies in Expert Setting One weight per policy/expert Weights updated with loss and share update Problem: need to know misses of each expert Solution: simulate all policies on virtual cache - record ID and size - but not the actual data jiazhong (UCSC) May 16, / 35

11 Two Master Policies Master Policies When serving a request Hedge+ picks policy randomly according to their weights Rank-Ideal deterministically computes requests weighted rank and refetches highest ranked requests jiazhong (UCSC) May 16, / 35

12 Master Policies The Rank of a Request A policy ranks its cached requests according to the order of evicting them (low ranked requests are evicted first) Rank all of the uncached requests with zero Evict r 6 first r 1 last r 2 and r 4 not in cache Requests r 1 r 2 r 3 r 4 r 5 r 6 Rank jiazhong (UCSC) May 16, / 35

13 Master Policies The Weighted Rank of a Request The weighted rank of a request r is the sum of its ranks weighted by different policies: weighted rank(r) = N w i rank i,r i=1 where w i is the weight of policy i and rank i,r is the rank of request r by policy i jiazhong (UCSC) May 16, / 35

14 RankIdeal Master Policies At each trail, RankIdeal Refetches as many request as possible by the descending order of their weighted ranks After refetching, the cache is loaded with the Ideal Cache (initial segment of the ordered requests). jiazhong (UCSC) May 16, / 35

15 Performance masters Master Policies BestRefetch BestFix Hedge+ RankIdeal Union of Baselines miss rate refetch rate RankIdeal is better than Hedge+ which uses the same weight update. Why? jiazhong (UCSC) May 16, / 35

16 Table of Contents Forced and Optional Policies 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

17 Forced and Optional Policies Forced and Optional Policies Two types of caching policies Forced: policy is forced to cache missed request Optional: policy may or may not cache missed request In the original paper, 12 baseline policies are forced Hedge+ follows the setting of baseline policies. RankIdeal is optional RankIdeal chooses items according to weighted rank If missed request ranked too low, then not cached Is this the reason why RankIdeal outperforms Hedge+? jiazhong (UCSC) May 16, / 35

18 Forced and Optional Policies Examples of Forced and Optional Base Policies Optional SIZE: only cache a request if it is smaller than the smallest cached one Optional LRU and Forced LRU are the same The missed request is the most recently used one Always cached for both variants jiazhong (UCSC) May 16, / 35

19 Forced and Optional Policies Performance with Forced and Optional Base Policies 0.06 Forced BestRefetch BestFix Hedge+ RankIdeal Union of Baselines Optional refetch rate jiazhong (UCSC) May 16, / 35

20 Forced and Optional Policies Observation Under optional setting Rank-Ideal is still better than Hedge+. Forced/Optional is not the reason of Rank-Ideal s superiority. New goal Curves move down, i.e. lower overall miss rates BestRefetch curve gets flatter Use BestRefetch curves to design online algorithms Find a set of experts so that curves become flat or increasing jiazhong (UCSC) May 16, / 35

21 Table of Contents Deterministic VS Randomized 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

22 Deterministic VS Randomized Deterministic vs Randomized Algorithms Why RankIdeal is better than Hedge+? Rank-Ideal is a deterministic algorithm while Hedge+ is a randomized one. (Deterministic version of Hedge+)MaxHedge+: Same update as Hedge+ Predicts with the policy of maximum weight jiazhong (UCSC) May 16, / 35

23 Deterministic VS Randomized Performance MaxHedge miss rate BestRefetch Best Fixed Hedge+ RankIdeal MaxHedge+ Union of Baselines refetch rate MaxHedge+ and RankIdeal perform similarly and outperform Hedge+ Deterministic algorithms are better on this data. Randomized algorithm should be better on adversary data jiazhong (UCSC) May 16, / 35

24 Table of Contents Combining Caches 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

25 Combining Caches Improve the Combining of the Caches Does RankIdeal combines the caches well? it is unfaire in some sense. Recall that Rank Ideal combines caches with the rank of requests. Cache of 10 requests gives total rank of 10 i=1 i = 55 Cache of 5 requests only gives 15 Denote the score of the i-th request in a cache of n requests by score(i, n). To be fair: n score(i, n) should be a constant not depending on n i=1 jiazhong (UCSC) May 16, / 35

26 Defining score(i, n) Combining Caches For any function f (x) : [0, 1] R, the following definition of score(i, n) is fair: score(i, n) = 1 n f ( i n ) The fairness can be showed by the fact that for any n: n score(i, n) i=1 1 0 f (x)dx jiazhong (UCSC) May 16, / 35

27 Choice of f (x) Combining Caches Non-negative monotone increase functions: f (x) = x φ (φ 0) y=x^0.1 y=x^0.5 y=x y=x^2 y=x^ jiazhong (UCSC) May 16, / 35

28 Results Combining Caches For φ 1, score functions give slightly better results than RankIdeal Rank score(i,n) miss rate /9 1/7 1/5 1/ phi What is the best way for combining while ignoring the amount of refetching? jiazhong (UCSC) May 16, / 35

29 Table of Contents Onlineness Measure 1 Motivation 2 Caching Problem 3 Master Policies 4 Forced and Optional Policies 5 Deterministic VS Randomized 6 Combining Caches 7 Onlineness Measure jiazhong (UCSC) May 16, / 35

30 Onlineness Measure Problem: BestRefetch Curve Overfits Random permuted data should not have any onlineness Curve should not go down miss rate Week Data Set with Random Permutation Week Data Set refetch rate jiazhong (UCSC) May 16, / 35

31 Onlineness Measure Avoiding overfitting Reason: best partition chosen on entire request sequence - i.e. training = test set Batch learning: split into training and testing set jiazhong (UCSC) May 16, / 35

32 Onlineness Measure Online learning: split into even/odd requests Pair1 Pair2 Pair3 Pair4 Pair5 Requests: R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 Training Testing Alternative (not worth it?) Per pair, randomly choose one for training/testing Pair1 Pair2 Pair3 Pair4 Pair5 Requests: R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 Training Testing jiazhong (UCSC) May 16, / 35

33 Onlineness Measure New measure of onlineness Run policies on training requests only For each R, find best partition with refetch rate less than R Run policies on testing requests only Report missrate of the best training partitions on testing requests Decided by BestRefetch(R) on training requests SIZE GDS LRU Training R1 R3 R5 R7 R9 R11 R12 R13 R14 R15 Testing R2 R4 R6 R8 R10 R12 R14 R16 R18 R20 Measure onlineness by misses on testing requests jiazhong (UCSC) May 16, / 35

34 Onlineness Measure BestRefetch with Splitting How does splitting influence the BestRefetch curve? Miss rate increases since the obligatory miss rate increases BestRefetch Odd Requests All VC Odd Requests BestRefetch All Requests All VC All Requests miss rate refetch rate jiazhong (UCSC) May 16, / 35

35 Onlineness Measure Miss Rate of Testing Requests No overfitting to random data: testing miss rate goes up immediately random permuted data train random permuted data test original data train original data test 0.05 miss rate refetch rate jiazhong (UCSC) May 16, / 35

Experiments With Expert Based Caching Policies

Experiments With Expert Based Caching Policies Experiments With Expert Based Caching Policies Robert Abbott UCSC CMPS 242 Fall 2009 Abstract This project compares the performance of Window and Weighted Majority expert based caching algorithms under

More information

Adaptive Caching by Refetching (View in Color)

Adaptive Caching by Refetching (View in Color) Adaptive Caching by Refetching (View in Color) Robert B. Gramacy Λ, Manfred K. Warmuth Λ, Scott A. Brandt, Ismail Ari frbgramacy, manfred, scott, arig@cs.ucsc.edu University of California Santa Cruz Abstract

More information

Adaptive Caching by Refetching

Adaptive Caching by Refetching Adaptive Caching by Refetching Robert B. Gramacy Λ, Manfred K. Warmuth Λ, Scott A. Brandt, Ismail Ari frbgramacy, manfred, scott, arig@cs.ucsc.edu University of California Santa Cruz Abstract We are constructing

More information

Adaptive Caching by Experts. Robert B. Gramacy

Adaptive Caching by Experts. Robert B. Gramacy UNIVERSITY OF CALIFORNIA SANTA CRUZ Adaptive Caching by Experts A thesis submitted in partial satisfaction of the requirements for the degree of MASTER OF SCIENCE in COMPUTER SCIENCE by Robert B. Gramacy

More information

Cache Controller with Enhanced Features using Verilog HDL

Cache Controller with Enhanced Features using Verilog HDL Cache Controller with Enhanced Features using Verilog HDL Prof. V. B. Baru 1, Sweety Pinjani 2 Assistant Professor, Dept. of ECE, Sinhgad College of Engineering, Vadgaon (BK), Pune, India 1 PG Student

More information

ECE7995 Caching and Prefetching Techniques in Computer Systems. Lecture 8: Buffer Cache in Main Memory (I)

ECE7995 Caching and Prefetching Techniques in Computer Systems. Lecture 8: Buffer Cache in Main Memory (I) ECE7995 Caching and Prefetching Techniques in Computer Systems Lecture 8: Buffer Cache in Main Memory (I) 1 Review: The Memory Hierarchy Take advantage of the principle of locality to present the user

More information

Chapter 09: Caches. Lesson 04: Replacement policy

Chapter 09: Caches. Lesson 04: Replacement policy Chapter 09: Caches Lesson 04: Replacement policy 1 Objective Understand the replacement Policy Comparisons between write back and write through caches 2 Replacement policy 3 Replacement after eviction

More information

Virtual Memory Demand Paging. Virtual Memory Working Set Model

Virtual Memory Demand Paging. Virtual Memory Working Set Model Virtual Memory Demand Paging When a reference is made to an address on a page not present in main memory, it is called a page fault. The operating system must read in the required page from the disk, enter

More information

Cache Memory COE 403. Computer Architecture Prof. Muhamed Mudawar. Computer Engineering Department King Fahd University of Petroleum and Minerals

Cache Memory COE 403. Computer Architecture Prof. Muhamed Mudawar. Computer Engineering Department King Fahd University of Petroleum and Minerals Cache Memory COE 403 Computer Architecture Prof. Muhamed Mudawar Computer Engineering Department King Fahd University of Petroleum and Minerals Presentation Outline The Need for Cache Memory The Basics

More information

Outline. 1 Paging. 2 Eviction policies. 3 Thrashing 1 / 28

Outline. 1 Paging. 2 Eviction policies. 3 Thrashing 1 / 28 Outline 1 Paging 2 Eviction policies 3 Thrashing 1 / 28 Paging Use disk to simulate larger virtual than physical mem 2 / 28 Working set model # of accesses virtual address Disk much, much slower than memory

More information

INF4820, Algorithms for AI and NLP: Evaluating Classifiers Clustering

INF4820, Algorithms for AI and NLP: Evaluating Classifiers Clustering INF4820, Algorithms for AI and NLP: Evaluating Classifiers Clustering Erik Velldal University of Oslo Sept. 18, 2012 Topics for today 2 Classification Recap Evaluating classifiers Accuracy, precision,

More information

The Multicache Simulation Environment Version 1.0 Reference Manual. Ismail Ari

The Multicache Simulation Environment Version 1.0 Reference Manual. Ismail Ari The Multicache Simulation Environment Version 1.0 Reference Manual Ismail Ari ari@cs.ucsc.edu UCSC-CRL-03-02 June 2, 2003 Department of Computer Science University of California, Santa Cruz ABSTRACT Multicache

More information

Evaluation. Evaluate what? For really large amounts of data... A: Use a validation set.

Evaluation. Evaluate what? For really large amounts of data... A: Use a validation set. Evaluate what? Evaluation Charles Sutton Data Mining and Exploration Spring 2012 Do you want to evaluate a classifier or a learning algorithm? Do you want to predict accuracy or predict which one is better?

More information

PAGE REPLACEMENT. Operating Systems 2015 Spring by Euiseong Seo

PAGE REPLACEMENT. Operating Systems 2015 Spring by Euiseong Seo PAGE REPLACEMENT Operating Systems 2015 Spring by Euiseong Seo Today s Topics What if the physical memory becomes full? Page replacement algorithms How to manage memory among competing processes? Advanced

More information

Treaps. 1 Binary Search Trees (BSTs) CSE341T/CSE549T 11/05/2014. Lecture 19

Treaps. 1 Binary Search Trees (BSTs) CSE341T/CSE549T 11/05/2014. Lecture 19 CSE34T/CSE549T /05/04 Lecture 9 Treaps Binary Search Trees (BSTs) Search trees are tree-based data structures that can be used to store and search for items that satisfy a total order. There are many types

More information

Course 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 Course Outline Processes CPU Scheduling Synchronization & Deadlock Memory Management File Systems & I/O Distributed Systems 1 Today: Memory Management Terminology Uniprogramming Multiprogramming Contiguous

More information

Chapter 6 Objectives

Chapter 6 Objectives Chapter 6 Memory Chapter 6 Objectives Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured.

More information

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction

Chapter 6 Memory 11/3/2015. Chapter 6 Objectives. 6.2 Types of Memory. 6.1 Introduction Chapter 6 Objectives Chapter 6 Memory Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured.

More information

Evaluation Metrics. (Classifiers) CS229 Section Anand Avati

Evaluation Metrics. (Classifiers) CS229 Section Anand Avati Evaluation Metrics (Classifiers) CS Section Anand Avati Topics Why? Binary classifiers Metrics Rank view Thresholding Confusion Matrix Point metrics: Accuracy, Precision, Recall / Sensitivity, Specificity,

More information

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PAUL BALISTER Abstract It has been shown [Balister, 2001] that if n is odd and m 1,, m t are integers with m i 3 and t i=1 m i = E(K n) then K n can be decomposed

More information

On the Analysis of Caches with Pending Interest Tables

On the Analysis of Caches with Pending Interest Tables On the Analysis of Caches with Pending Interest Tables Mostafa Dehghan 1, Bo Jiang 1 Ali Dabirmoghaddam 2, Don Towsley 1 1 University of Massachusetts Amherst 2 University of California Santa Cruz ICN,

More information

CSE 153 Design of Operating Systems

CSE 153 Design of Operating Systems CSE 153 Design of Operating Systems Winter 18 Lecture 18/19: Page Replacement Memory Management Memory management systems Physical and virtual addressing; address translation Techniques: Partitioning,

More information

Artificial Neural Networks (Feedforward Nets)

Artificial Neural Networks (Feedforward Nets) Artificial Neural Networks (Feedforward Nets) y w 03-1 w 13 y 1 w 23 y 2 w 01 w 21 w 22 w 02-1 w 11 w 12-1 x 1 x 2 6.034 - Spring 1 Single Perceptron Unit y w 0 w 1 w n w 2 w 3 x 0 =1 x 1 x 2 x 3... x

More information

Recall: The Routing problem: Local decisions. Recall: Multidimensional Meshes and Tori. Properties of Routing Algorithms

Recall: The Routing problem: Local decisions. Recall: Multidimensional Meshes and Tori. Properties of Routing Algorithms CS252 Graduate Computer Architecture Lecture 16 Multiprocessor Networks (con t) March 14 th, 212 John Kubiatowicz Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~kubitron/cs252

More information

Evaluation Measures. Sebastian Pölsterl. April 28, Computer Aided Medical Procedures Technische Universität München

Evaluation Measures. Sebastian Pölsterl. April 28, Computer Aided Medical Procedures Technische Universität München Evaluation Measures Sebastian Pölsterl Computer Aided Medical Procedures Technische Universität München April 28, 2015 Outline 1 Classification 1. Confusion Matrix 2. Receiver operating characteristics

More information

INF4820 Algorithms for AI and NLP. Evaluating Classifiers Clustering

INF4820 Algorithms for AI and NLP. Evaluating Classifiers Clustering INF4820 Algorithms for AI and NLP Evaluating Classifiers Clustering Murhaf Fares & Stephan Oepen Language Technology Group (LTG) September 27, 2017 Today 2 Recap Evaluation of classifiers Unsupervised

More information

CS 31: Intro to Systems Caching. Kevin Webb Swarthmore College March 24, 2015

CS 31: Intro to Systems Caching. Kevin Webb Swarthmore College March 24, 2015 CS 3: Intro to Systems Caching Kevin Webb Swarthmore College March 24, 205 Reading Quiz Abstraction Goal Reality: There is no one type of memory to rule them all! Abstraction: hide the complex/undesirable

More information

CS4491/CS 7265 BIG DATA ANALYTICS

CS4491/CS 7265 BIG DATA ANALYTICS CS4491/CS 7265 BIG DATA ANALYTICS EVALUATION * Some contents are adapted from Dr. Hung Huang and Dr. Chengkai Li at UT Arlington Dr. Mingon Kang Computer Science, Kennesaw State University Evaluation for

More information

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers

Primality Testing. Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Primality Testing Public-Key Cryptography needs large prime numbers How can you tell if p is prime? Try dividing p by all smaller integers Exponential in p (number of bits to represent p) Improvement:

More information

Operating Systems. Operating Systems Sina Meraji U of T

Operating Systems. Operating Systems Sina Meraji U of T Operating Systems Operating Systems Sina Meraji U of T Recap Last time we looked at memory management techniques Fixed partitioning Dynamic partitioning Paging Example Address Translation Suppose addresses

More information

Randomized Algorithms: Selection

Randomized Algorithms: Selection Randomized Algorithms: Selection CSE21 Winter 2017, Day 25 (B00), Day 16 (A00) March 15, 2017 http://vlsicad.ucsd.edu/courses/cse21-w17 Selection Problem: WHAT Given list of distinct integers a 1, a 2,,

More information

More on Neural Networks. Read Chapter 5 in the text by Bishop, except omit Sections 5.3.3, 5.3.4, 5.4, 5.5.4, 5.5.5, 5.5.6, 5.5.7, and 5.

More on Neural Networks. Read Chapter 5 in the text by Bishop, except omit Sections 5.3.3, 5.3.4, 5.4, 5.5.4, 5.5.5, 5.5.6, 5.5.7, and 5. More on Neural Networks Read Chapter 5 in the text by Bishop, except omit Sections 5.3.3, 5.3.4, 5.4, 5.5.4, 5.5.5, 5.5.6, 5.5.7, and 5.6 Recall the MLP Training Example From Last Lecture log likelihood

More information

Physical characteristics (such as packaging, volatility, and erasability Organization.

Physical characteristics (such as packaging, volatility, and erasability Organization. CS 320 Ch 4 Cache Memory 1. The author list 8 classifications for memory systems; Location Capacity Unit of transfer Access method (there are four:sequential, Direct, Random, and Associative) Performance

More information

Model Complexity and Generalization

Model Complexity and Generalization HT2015: SC4 Statistical Data Mining and Machine Learning Dino Sejdinovic Department of Statistics Oxford http://www.stats.ox.ac.uk/~sejdinov/sdmml.html Generalization Learning Curves Underfit Generalization

More information

Caches and Memory Hierarchy: Review. UCSB CS240A, Winter 2016

Caches and Memory Hierarchy: Review. UCSB CS240A, Winter 2016 Caches and Memory Hierarchy: Review UCSB CS240A, Winter 2016 1 Motivation Most applications in a single processor runs at only 10-20% of the processor peak Most of the single processor performance loss

More information

k-selection Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong

k-selection Yufei Tao Department of Computer Science and Engineering Chinese University of Hong Kong Department of Computer Science and Engineering Chinese University of Hong Kong In this lecture, we will put randomization to some real use, by using it to solve a non-trivial problem called k-selection

More information

Memory. Objectives. Introduction. 6.2 Types of Memory

Memory. Objectives. Introduction. 6.2 Types of Memory Memory Objectives Master the concepts of hierarchical memory organization. Understand how each level of memory contributes to system performance, and how the performance is measured. Master the concepts

More information

Virtual Memory III. Jo, Heeseung

Virtual Memory III. Jo, Heeseung Virtual Memory III Jo, Heeseung Today's Topics What if the physical memory becomes full? Page replacement algorithms How to manage memory among competing processes? Advanced virtual memory techniques Shared

More information

Fall 2004 CS 186 Discussion Section Exercises - Week 2 ending 9/10

Fall 2004 CS 186 Discussion Section Exercises - Week 2 ending 9/10 Fall 00 CS 86 Discussion Section Exercises - Week ending 9/0 RELATIONAL MODEL ) Design relational tables to represent the following information. a. A company has employees working in departments. b. Name,

More information

Lecture 17. Edited from slides for Operating System Concepts by Silberschatz, Galvin, Gagne

Lecture 17. Edited from slides for Operating System Concepts by Silberschatz, Galvin, Gagne Lecture 17 Edited from slides for Operating System Concepts by Silberschatz, Galvin, Gagne Page Replacement Algorithms Last Lecture: FIFO Optimal Page Replacement LRU LRU Approximation Additional-Reference-Bits

More information

COSC 311: ALGORITHMS HW1: SORTING

COSC 311: ALGORITHMS HW1: SORTING COSC 311: ALGORITHMS HW1: SORTIG Solutions 1) Theoretical predictions. Solution: On randomly ordered data, we expect the following ordering: Heapsort = Mergesort = Quicksort (deterministic or randomized)

More information

Trace Driven Simulation of GDSF# and Existing Caching Algorithms for Web Proxy Servers

Trace Driven Simulation of GDSF# and Existing Caching Algorithms for Web Proxy Servers Proceeding of the 9th WSEAS Int. Conference on Data Networks, Communications, Computers, Trinidad and Tobago, November 5-7, 2007 378 Trace Driven Simulation of GDSF# and Existing Caching Algorithms for

More information

INF4820 Algorithms for AI and NLP. Evaluating Classifiers Clustering

INF4820 Algorithms for AI and NLP. Evaluating Classifiers Clustering INF4820 Algorithms for AI and NLP Evaluating Classifiers Clustering Erik Velldal & Stephan Oepen Language Technology Group (LTG) September 23, 2015 Agenda Last week Supervised vs unsupervised learning.

More information

B-Trees and External Memory

B-Trees and External Memory Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 and External Memory 1 1 (2, 4) Trees: Generalization of BSTs Each internal node

More information

Query Answering Using Inverted Indexes

Query Answering Using Inverted Indexes Query Answering Using Inverted Indexes Inverted Indexes Query Brutus AND Calpurnia J. Pei: Information Retrieval and Web Search -- Query Answering Using Inverted Indexes 2 Document-at-a-time Evaluation

More information

Information Retrieval and Web Search Engines

Information Retrieval and Web Search Engines Information Retrieval and Web Search Engines Lecture 7: Document Clustering May 25, 2011 Wolf-Tilo Balke and Joachim Selke Institut für Informationssysteme Technische Universität Braunschweig Homework

More information

Page Replacement Algorithms

Page Replacement Algorithms Page Replacement Algorithms MIN, OPT (optimal) RANDOM evict random page FIFO (first-in, first-out) give every page equal residency LRU (least-recently used) MRU (most-recently used) 1 9.1 Silberschatz,

More information

Locality and Data Accesses video is wrong one notes when video is correct

Locality and Data Accesses video is wrong one notes when video is correct Cache Review This lesson is a review of caches. Beginning with the structure of the cache itself, including set associative and direct mapped caches. Then the lesson discusses replacement policies, specifically

More information

B-Trees and External Memory

B-Trees and External Memory Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 B-Trees and External Memory 1 (2, 4) Trees: Generalization of BSTs Each internal

More information

How to create a process? What does process look like?

How to create a process? What does process look like? How to create a process? On Unix systems, executable read by loader Compile time runtime Ken Birman ld loader Cache Compiler: generates one object file per source file Linker: combines all object files

More information

Clustering. RNA-seq: What is it good for? Finding Similarly Expressed Genes. Data... And Lots of It!

Clustering. RNA-seq: What is it good for? Finding Similarly Expressed Genes. Data... And Lots of It! RNA-seq: What is it good for? Clustering High-throughput RNA sequencing experiments (RNA-seq) offer the ability to measure simultaneously the expression level of thousands of genes in a single experiment!

More information

Caches and Memory Hierarchy: Review. UCSB CS240A, Fall 2017

Caches and Memory Hierarchy: Review. UCSB CS240A, Fall 2017 Caches and Memory Hierarchy: Review UCSB CS24A, Fall 27 Motivation Most applications in a single processor runs at only - 2% of the processor peak Most of the single processor performance loss is in the

More information

Least Recently Frequently Used Caching Algorithm with Filtering Policies

Least Recently Frequently Used Caching Algorithm with Filtering Policies VLSI Project Least Recently Frequently Used Caching Algorithm with Filtering Policies Alexander Zlotnik Marcel Apfelbaum Supervised by: Michael Behar, Winter 2005/2006 VLSI Project Winter 2005/2006 1 Introduction

More information

STORING DATA: DISK AND FILES

STORING DATA: DISK AND FILES STORING DATA: DISK AND FILES CS 564- Spring 2018 ACKs: Dan Suciu, Jignesh Patel, AnHai Doan WHAT IS THIS LECTURE ABOUT? How does a DBMS store data? disk, SSD, main memory The Buffer manager controls how

More information

Chapter 7: Large and Fast: Exploiting Memory Hierarchy

Chapter 7: Large and Fast: Exploiting Memory Hierarchy Chapter 7: Large and Fast: Exploiting Memory Hierarchy Basic Memory Requirements Users/Programmers Demand: Large computer memory ery Fast access memory Technology Limitations Large Computer memory relatively

More information

Com S 321 Problem Set 3

Com S 321 Problem Set 3 Com S 321 Problem Set 3 1. A computer has a main memory of size 8M words and a cache size of 64K words. (a) Give the address format for a direct mapped cache with a block size of 32 words. (b) Give the

More information

Virtual Memory #3 Oct. 10, 2018

Virtual Memory #3 Oct. 10, 2018 15-410...The cow and Zaphod... Virtual Memory #3 Oct. 10, 2018 Dave Eckhardt Dave O'Hallaron 1 L19_VM3 Synchronization Exam Thursday! 18:30 Doherty A302 Homework 1 due tonight! Not at midnight! 2 Synchronization

More information

Sorting and Selection

Sorting and Selection Sorting and Selection Introduction Divide and Conquer Merge-Sort Quick-Sort Radix-Sort Bucket-Sort 10-1 Introduction Assuming we have a sequence S storing a list of keyelement entries. The key of the element

More information

Inverted List Caching for Topical Index Shards

Inverted List Caching for Topical Index Shards Inverted List Caching for Topical Index Shards Zhuyun Dai and Jamie Callan Language Technologies Institute, Carnegie Mellon University {zhuyund, callan}@cs.cmu.edu Abstract. Selective search is a distributed

More information

Lecture 10: Large Cache Design III

Lecture 10: Large Cache Design III Lecture 10: Large Cache Design III Topics: Replacement policies, prefetch, dead blocks, associativity Sign up for class mailing list Pseudo-LRU has a 9% higher miss rate than true LRU 1 Overview 2 Set

More information

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and

Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and Copyright is owned by the Author of the thesis. Permission is given for a copy to be downloaded by an individual for the purpose of research and private study only. The thesis may not be reproduced elsewhere

More information

Supplementary Material for The Generalized PatchMatch Correspondence Algorithm

Supplementary Material for The Generalized PatchMatch Correspondence Algorithm Supplementary Material for The Generalized PatchMatch Correspondence Algorithm Connelly Barnes 1, Eli Shechtman 2, Dan B Goldman 2, Adam Finkelstein 1 1 Princeton University, 2 Adobe Systems 1 Overview

More information

Applied Statistics for the Behavioral Sciences

Applied Statistics for the Behavioral Sciences Applied Statistics for the Behavioral Sciences Chapter 2 Frequency Distributions and Graphs Chapter 2 Outline Organization of Data Simple Frequency Distributions Grouped Frequency Distributions Graphs

More information

Computer Systems C S Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College

Computer Systems C S Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College Computer Systems C S 0 7 Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College 2 Today s Topics TODAY S LECTURE: Caching ANNOUNCEMENTS: Assign6 & Assign7 due Friday! 6 & 7 NO late

More information

CACHE OPTIMIZATION. Mahdi Nazm Bojnordi. CS/ECE 6810: Computer Architecture. Assistant Professor School of Computing University of Utah

CACHE OPTIMIZATION. Mahdi Nazm Bojnordi. CS/ECE 6810: Computer Architecture. Assistant Professor School of Computing University of Utah CACHE OPTIMIZATION Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture Overview Announcement Homework 4 is due on Mar. 27 th This lecture Cache

More information

Roadmap DB Sys. Design & Impl. Review. Detailed roadmap. Interface. Interface (cont d) Buffer Management - DBMIN

Roadmap DB Sys. Design & Impl. Review. Detailed roadmap. Interface. Interface (cont d) Buffer Management - DBMIN 15-721 DB Sys. Design & Impl. Buffer Management - DBMIN Christos Faloutsos www.cs.cmu.edu/~christos Roadmap 1) Roots: System R and Ingres 2) Implementation: buffering, indexing, q-opt 3) Transactions:

More information

Neural Network Optimization and Tuning / Spring 2018 / Recitation 3

Neural Network Optimization and Tuning / Spring 2018 / Recitation 3 Neural Network Optimization and Tuning 11-785 / Spring 2018 / Recitation 3 1 Logistics You will work through a Jupyter notebook that contains sample and starter code with explanations and comments throughout.

More information

Unit 2 Buffer Pool Management

Unit 2 Buffer Pool Management Unit 2 Buffer Pool Management Based on: Sections 9.4, 9.4.1, 9.4.2 of Ramakrishnan & Gehrke (text); Silberschatz, et. al. ( Operating System Concepts ); Other sources Original slides by Ed Knorr; Updates

More information

CSL373: Lecture 7 Advanced Scheduling

CSL373: Lecture 7 Advanced Scheduling CSL373: Lecture 7 Advanced Scheduling Today Multi-level feedback in the real world UNIX Lottery scheduling: Clever use of randomness to get simplicity Retro-perspectives on scheduling Reading: Chapter

More information

First-In-First-Out (FIFO) Algorithm

First-In-First-Out (FIFO) Algorithm First-In-First-Out (FIFO) Algorithm Reference string: 7,0,1,2,0,3,0,4,2,3,0,3,0,3,2,1,2,0,1,7,0,1 3 frames (3 pages can be in memory at a time per process) 15 page faults Can vary by reference string:

More information

Last Class: Demand Paged Virtual Memory

Last Class: Demand Paged Virtual Memory Last Class: Demand Paged Virtual Memory Benefits of demand paging: Virtual address space can be larger than physical address space. Processes can run without being fully loaded into memory. Processes start

More information

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective Part I: Operating system overview: Memory Management 1 Hardware background The role of primary memory Program

More information

Lecture 12. Memory Design & Caches, part 2. Christos Kozyrakis Stanford University

Lecture 12. Memory Design & Caches, part 2. Christos Kozyrakis Stanford University Lecture 12 Memory Design & Caches, part 2 Christos Kozyrakis Stanford University http://eeclass.stanford.edu/ee108b 1 Announcements HW3 is due today PA2 is available on-line today Part 1 is due on 2/27

More information

Background. Virtual Memory (2/2) Demand Paging Example. First-In-First-Out (FIFO) Algorithm. Page Replacement Algorithms. Performance of Demand Paging

Background. Virtual Memory (2/2) Demand Paging Example. First-In-First-Out (FIFO) Algorithm. Page Replacement Algorithms. Performance of Demand Paging Virtual Memory (/) Background Page Replacement Allocation of Frames Thrashing Background Virtual memory separation of user logical memory from physical memory. Only part of the program needs to be in memory

More information

Computer Architecture and System Software Lecture 09: Memory Hierarchy. Instructor: Rob Bergen Applied Computer Science University of Winnipeg

Computer Architecture and System Software Lecture 09: Memory Hierarchy. Instructor: Rob Bergen Applied Computer Science University of Winnipeg Computer Architecture and System Software Lecture 09: Memory Hierarchy Instructor: Rob Bergen Applied Computer Science University of Winnipeg Announcements Midterm returned + solutions in class today SSD

More information

CSE 120 Principles of Operating Systems

CSE 120 Principles of Operating Systems CSE 120 Principles of Operating Systems Fall 2016 Lecture 11: Page Replacement Geoffrey M. Voelker Administrivia Lab time This week: Thu 4pm, Sat 2pm Next week: Tue, Wed At Washington University in St.

More information

CS 31: Intro to Systems Caching. Martin Gagne Swarthmore College March 23, 2017

CS 31: Intro to Systems Caching. Martin Gagne Swarthmore College March 23, 2017 CS 1: Intro to Systems Caching Martin Gagne Swarthmore College March 2, 2017 Recall A cache is a smaller, faster memory, that holds a subset of a larger (slower) memory We take advantage of locality to

More information

Chapter 8. Evaluating Search Engine

Chapter 8. Evaluating Search Engine Chapter 8 Evaluating Search Engine Evaluation Evaluation is key to building effective and efficient search engines Measurement usually carried out in controlled laboratory experiments Online testing can

More information

7. Boosting and Bagging Bagging

7. Boosting and Bagging Bagging Group Prof. Daniel Cremers 7. Boosting and Bagging Bagging Bagging So far: Boosting as an ensemble learning method, i.e.: a combination of (weak) learners A different way to combine classifiers is known

More information

Lecture 8 Sept 25, 2014

Lecture 8 Sept 25, 2014 CS 224: Advanced Algorithms Fall 2014 Prof. Jelani Nelson Lecture 8 Sept 25, 2014 Scribe: Jean Pouget-Abadie 1 Online Algorithms - Overview In this lecture, we are going to cover Online algorithms which

More information

CACHE OPTIMIZATION. Mahdi Nazm Bojnordi. CS/ECE 6810: Computer Architecture. Assistant Professor School of Computing University of Utah

CACHE OPTIMIZATION. Mahdi Nazm Bojnordi. CS/ECE 6810: Computer Architecture. Assistant Professor School of Computing University of Utah CACHE OPTIMIZATION Mahdi Nazm Bojnordi Assistant Professor School of Computing University of Utah CS/ECE 6810: Computer Architecture Overview Announcement Homework 3 will be released on Oct. 31 st This

More information

Unit 2 Buffer Pool Management

Unit 2 Buffer Pool Management Unit 2 Buffer Pool Management Based on: Pages 318-323, 541-542, and 586-587 of Ramakrishnan & Gehrke (text); Silberschatz, et. al. ( Operating System Concepts ); Other sources Original slides by Ed Knorr;

More information

Memory Hierarchy: Caches, Virtual Memory

Memory Hierarchy: Caches, Virtual Memory Memory Hierarchy: Caches, Virtual Memory Readings: 5.1-5.4, 5.8 Big memories are slow Computer Fast memories are small Processor Memory Devices Control Input Datapath Output Need to get fast, big memories

More information

DATA MINING OVERFITTING AND EVALUATION

DATA MINING OVERFITTING AND EVALUATION DATA MINING OVERFITTING AND EVALUATION 1 Overfitting Will cover mechanisms for preventing overfitting in decision trees But some of the mechanisms and concepts will apply to other algorithms 2 Occam s

More information

6.033 Computer System Engineering

6.033 Computer System Engineering MIT OpenCourseWare http://ocw.mit.edu 6.033 Computer System Engineering Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 6.033 2009 Lecture

More information

Sandeep Kharidhi and WenSui Liu ChoicePoint Precision Marketing

Sandeep Kharidhi and WenSui Liu ChoicePoint Precision Marketing Generalized Additive Model and Applications in Direct Marketing Sandeep Kharidhi and WenSui Liu ChoicePoint Precision Marketing Abstract Logistic regression 1 has been widely used in direct marketing applications

More information

PARALLEL & DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH

PARALLEL & DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH PARALLEL & DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH 1 INTRODUCTION In centralized database: Data is located in one place (one server) All DBMS functionalities are done by that server

More information

Principles of Operating Systems

Principles of Operating Systems Principles of Operating Systems Lecture 21-23 - Virtual Memory Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof. Nalini Venkatasubramanian,

More information

CMSC424: Database Design. Instructor: Amol Deshpande

CMSC424: Database Design. Instructor: Amol Deshpande CMSC424: Database Design Instructor: Amol Deshpande amol@cs.umd.edu Databases Data Models Conceptual representa1on of the data Data Retrieval How to ask ques1ons of the database How to answer those ques1ons

More information

Data Mining and Knowledge Discovery Practice notes 2

Data Mining and Knowledge Discovery Practice notes 2 Keywords Data Mining and Knowledge Discovery: Practice Notes Petra Kralj Novak Petra.Kralj.Novak@ijs.si Data Attribute, example, attribute-value data, target variable, class, discretization Algorithms

More information

CSE 7/5337: Information Retrieval and Web Search Document clustering I (IIR 16)

CSE 7/5337: Information Retrieval and Web Search Document clustering I (IIR 16) CSE 7/5337: Information Retrieval and Web Search Document clustering I (IIR 16) Michael Hahsler Southern Methodist University These slides are largely based on the slides by Hinrich Schütze Institute for

More information

Virtual Memory. Today.! Virtual memory! Page replacement algorithms! Modeling page replacement algorithms

Virtual Memory. Today.! Virtual memory! Page replacement algorithms! Modeling page replacement algorithms Virtual Memory Today! Virtual memory! Page replacement algorithms! Modeling page replacement algorithms Reminder: virtual memory with paging! Hide the complexity let the OS do the job! Virtual address

More information

Algorithmen II. Peter Sanders, Christian Schulz, Simon Gog. Übungen: Michael Axtmann. Institut für Theoretische Informatik, Algorithmik II.

Algorithmen II. Peter Sanders, Christian Schulz, Simon Gog. Übungen: Michael Axtmann. Institut für Theoretische Informatik, Algorithmik II. Schulz, Gog, Sanders: Algorithmen II - 31. Januar 2017 Algorithmen II Peter Sanders, Christian Schulz, Simon Gog Übungen: Michael Axtmann Institut für Theoretische Informatik, Algorithmik II Web: http://algo2.iti.kit.edu/algorithmenii_ws16.php

More information

How Learning Differs from Optimization. Sargur N. Srihari

How Learning Differs from Optimization. Sargur N. Srihari How Learning Differs from Optimization Sargur N. srihari@cedar.buffalo.edu 1 Topics in Optimization Optimization for Training Deep Models: Overview How learning differs from optimization Risk, empirical

More information

Virtual memory. Virtual memory - Swapping. Large virtual memory. Processes

Virtual memory. Virtual memory - Swapping. Large virtual memory. Processes Virtual memory Virtual memory - Swapping Johan Montelius KTH 2017 1: Allowing two or more processes to use main memory, given them an illusion of private memory. 2: Provide the illusion of a much larger

More information

Classification: Feature Vectors

Classification: Feature Vectors Classification: Feature Vectors Hello, Do you want free printr cartriges? Why pay more when you can get them ABSOLUTELY FREE! Just # free YOUR_NAME MISSPELLED FROM_FRIEND... : : : : 2 0 2 0 PIXEL 7,12

More information

Chapter 9: Virtual Memory

Chapter 9: Virtual Memory Chapter 9: Virtual Memory Background Demand Paging Chapter 9: Virtual Memory Copy-on-Write Page Replacement Allocation of Frames Thrashing Memory-Mapped Files Allocating Kernel Memory Other Considerations

More information

Chapter 9: Virtual Memory

Chapter 9: Virtual Memory Chapter 9: Virtual Memory Chapter 9: Virtual Memory 9.1 Background 9.2 Demand Paging 9.3 Copy-on-Write 9.4 Page Replacement 9.5 Allocation of Frames 9.6 Thrashing 9.7 Memory-Mapped Files 9.8 Allocating

More information

Flat Clustering. Slides are mostly from Hinrich Schütze. March 27, 2017

Flat Clustering. Slides are mostly from Hinrich Schütze. March 27, 2017 Flat Clustering Slides are mostly from Hinrich Schütze March 7, 07 / 79 Overview Recap Clustering: Introduction 3 Clustering in IR 4 K-means 5 Evaluation 6 How many clusters? / 79 Outline Recap Clustering:

More information

Swapping. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Swapping. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Swapping Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Swapping Support processes when not enough physical memory User program should be independent

More information