On the Smoothness of Paging Algorithms
|
|
- Audra Hart
- 6 years ago
- Views:
Transcription
1 On the Smoothness of Paging Algorithms Jan Reineke and Alejandro Salinger Technische Universität Dortmund November 17, 2016
2 MoHvaHon: Real-Hme Systems Side airbag in car Side airbag in car ReacHon in < 10 ms CrankshaT-synchronous tasks ReacHon in < 45 microsec Controllers must finish their tasks within given Hme bounds à Need to determine Worst-Case Response Times (WCRT)
3 Influence of Caches on ExecuHon Times x=a+b; LOAD LOAD ADD r2, _a r1, _b r3,r2,r1 PowerPC 755 Courte 3
4 Basics: Caching/Paging Cache Slow memory Is p i in the cache? σ = p 6 p 3 p 2 p 4 p 4 p 2 p 10 p 11 p 5 p 4 -Yes Hit -No Fault (miss) Fetch p i from slow memory, evict one page from cache à Replacement policy determines page to evict à Access sequence + policy determine cache state 4
5 Why are Caches a Challenge? Core Task 1 Task Task... n Core Task 1 Task Task... n Cache Main Memory 1. Input-dependent memory accesses 2. Interference due to preempted tasks 3. Interference due to co-running tasks 5
6 Two Approaches to Timing Analysis 1. StaHc Analysis: Uncertainty about input-dependent memory accesses How does uncertainty about memory accesses Uncertainty about memory accesses of preemphng tasks Uncertainty affect uncertainty about memory about accesses number of co-running of faults? tasks 2. Measurement-based Analysis: Covers only subset of inputs How representahve are measurements Covers only subset of preemphng task scenarios Covers on only a subset subset of of co-running the possible task scenarios cases? 6
7 How does uncertainty about memory accesses affect uncertainty about execuhon Hme? number of faults A(σ') A(σ) QuanHfy uncertainty by edit distance σ σ' access sequences 7
8 DefiniHon of Smoothness dist(σ,σ ') = edit distance between σ and σ ' For generic δ: We call A smooth if it is (1,β,1)-smooth for some β. 8
9 Key QuesHons How smooth are known paging algorithms? Are there fundamental bounds on the smoothness of paging algorithms? Are smoothness and high performance contradictory goals? Can randomizahon help? 9
10 DeterminisHc Replacement Policies / Paging Algorithms Online Algorithms: LRU: Least-Recently-Used FIFO: First-In-First-Out FWF: Flush-When-Full Offline Algorithm: FITF: Furthest-In-The-Future (OPT, LFD, Belady s) 10
11 Smoothness of LRU... [d c b a] [d c b a] [a d c b] [b a d c] [d c b a] [p d c b] [a p d c] [b a p d] miss miss miss [c b a d] [c b a p] [d c b a] [d c b a] Same state miss miss 11
12 Smoothness of LRU 12
13 For any replacement policy A: If A is (1,c,1)-smooth, then A is (1,δc)-smooth 13
14 FIFO is not smooth miss [a b c d] [e a b c ] [e a b c] [e a b c] [d c b a] [e d c b] [a e d c] [b a e d] miss miss miss [e a b c] [c b a e] miss [d e a b] [d c b a] [d e a b] [e d c b] [d e a b] [a e d c] miss miss miss miss 14
15 Lower Bounds (1 of 2) An algorithm is demand paging if it only evicts pages when needed e.g., LRU, FIFO But not all algorithms are demand paging: How about compehhve algorithms? 15
16 CompeHHve Analysis 16
17 Lower Bounds (2 of 2) An algorithm is demand paging if it only evicts pages when needed e.g., LRU, FIFO But not all algorithms are demand paging e.g., FWF 17
18 DeterminisHc Algorithms Smoothness c-compehhve FIFO DeterminisHc strongly-compehhve SMOOTH FWF LRU OPT CompeHHveness 18
19 Can randomizahon help? 19
20 Randomized Replacement Policies RAND: Evict page chosen uniformly at random MARK: Evict only unmarked pages PARTITION, EQUITABLE: define state probability distribuhon based on OPT s cache contents Evict-On-Access: like RAND, but evict on hits too! 20
21 Randomized Replacement Policies Algorithm Compe//ve ra/o Smoothness RANDOM MARK PARTITION EQUITABLE EOA 21
22 Bound extra misses by distance between distribuhons [a b c] 1/3 [a b d] 1/3 [a c d] 1/3 1/3 1/3 1/3 [a b c] 2/3 [a b e] 1/3 2 Claims: 22
23 Smoothness Randomized Algorithms c-compehhve FIFO PARTITION EQUITABLE MARK DeterminisHc strongly-compehhve SMOOTH Rand. strongly-comp. FWF RANDOM, LRU OPT EOA CompeHHveness 23
24 Can we design smoother algorithms? 24
25 Smoothed-LRU 25
26 Smoothed-LRU Smoothed-LRU is -smooth 2k 1 k + i 1 (1,δ min( +1, 2i +1 2i )) i = 0 à as smooth as LRU i = k-1 à as smooth as OPT Is it compehhve? As compehhve as LRU for size k-i. 26
27 LRU-Random Smoothed-LRU and EOA are very smooth, but not compehhve LRU-Random: evict the i th oldest page with probability 1 ih k 27
28 LRU-Random: Conjectures LRU-Random is (1, Θ(H k2 ) δ)-smooth LRU-Random is Θ(H k2 )-compehhve against an oblivious adversary 28
29 Smoothness The Whole Picture c-compehhve PARTITION EQUITABLE MARK FIFO * With resource augmentahon DeterminisHc strongly-compehhve SMOOTH Rand. strongly-comp. FWF RANDOM, LRU LRU-Random (k=2) OPT Smoothed-LRU* EOA CompeHHveness 29
30 Open Problems (Generalize smoothness proof for LRU-Random) Is there a randomized LRU-sibling? Are there randomized algorithms that are smooth with high probability? Are there less pessimishc nohons of smoothness? 30
31 Thank you for your a~enhon! 31
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 informationDesign and Analysis of Time-Critical Systems Introduction
Design and Analysis of Time-Critical Systems Introduction Jan Reineke @ saarland university ACACES Summer School 2017 Fiuggi, Italy computer science Structure of this Course 2. How are they implemented?
More informationLecture 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 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 informationPaging for Multicore Processors
Paging for Multicore Processors University of Waterloo Technical Report CS-2011-12 Alejandro López-Ortiz and Alejandro Salinger David R. Cheriton School of Computer Science, University of Waterloo, 200
More informationAdvanced Algorithms. On-line Algorithms
Advanced Algorithms On-line Algorithms 1 Introduction Online Algorithms are algorithms that need to make decisions without full knowledge of the input. They have full knowledge of the past but no (or partial)
More informationLecture Overview. 2 Online Algorithms. 2.1 Ski rental problem (rent-or-buy) COMPSCI 532: Design and Analysis of Algorithms November 4, 2015
COMPSCI 532: Design and Analysis of Algorithms November 4, 215 Lecturer: Debmalya Panigrahi Lecture 19 Scribe: Allen Xiao 1 Overview In this lecture, we motivate online algorithms and introduce some of
More informationOnline Algorithms. - Lecture 4 -
Online Algorithms - Lecture 4 - Outline Quick recap.. The Cashing Problem Randomization in Online Algorithms Other views to Online Algorithms The Ski-rental problem The Parking Permit Problem 2 The Caching
More informationDesign and Analysis of Real-Time Systems Predictability and Predictable Microarchitectures
Design and Analysis of Real-Time Systems Predictability and Predictable Microarcectures Jan Reineke Advanced Lecture, Summer 2013 Notion of Predictability Oxford Dictionary: predictable = adjective, able
More informationTiming Predictability of Processors
Timing Predictability of Processors Introduction Airbag opens ca. 100ms after the crash Controller has to trigger the inflation in 70ms Airbag useless if opened too early or too late Controller has to
More informationECE7995 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 informationThe k-server problem June 27, 2005
Sanders/van Stee: Approximations- und Online-Algorithmen 1 The k-server problem June 27, 2005 Problem definition Examples An offline algorithm A lower bound and the k-server conjecture The greedy algorithm
More informationCACHE-RELATED PREEMPTION DELAY COMPUTATION FOR SET-ASSOCIATIVE CACHES
CACHE-RELATED PREEMPTION DELAY COMPUTATION FOR SET-ASSOCIATIVE CACHES PITFALLS AND SOLUTIONS 1 Claire Burguière, Jan Reineke, Sebastian Altmeyer 2 Abstract In preemptive real-time systems, scheduling analyses
More informationLast 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 informationOperating Systems. Memory: replacement policies
Operating Systems Memory: replacement policies Last time caching speeds up data lookups if the data is likely to be re-requested again data structures for O(1)-lookup data source set-associative (hardware)
More informationLast Class. Demand Paged Virtual Memory. Today: Demand Paged Virtual Memory. Demand Paged Virtual Memory
Last Class Segmentation User view of programs Each program consists of a number of segments Segmented Paging: combine the best features of paging and segmentation Today: Demand Paged Virtual Memory Up
More informationCaching and Demand-Paged Virtual Memory
Caching and Demand-Paged Virtual Memory Definitions Cache Copy of data that is faster to access than the original Hit: if cache has copy Miss: if cache does not have copy Cache block Unit of cache storage
More informationSMD149 - Operating Systems - VM Management
SMD149 - Operating Systems - VM Management Roland Parviainen November 17, 2005 1 / 35 Outline Overview Virtual memory management Fetch, placement and replacement strategies Placement strategies Paging,
More informationMore on weighted servers
More on weighted servers or FIFO is better than LRU Leah Epstein Csanád Imreh Rob van Stee Abstract We consider a generalized 2-server problem on the uniform space in which servers have different costs
More informationPaging algorithms. CS 241 February 10, Copyright : University of Illinois CS 241 Staff 1
Paging algorithms CS 241 February 10, 2012 Copyright : University of Illinois CS 241 Staff 1 Announcements MP2 due Tuesday Fabulous Prizes Wednesday! 2 Paging On heavily-loaded systems, memory can fill
More informationVIRTUAL MEMORY READING: CHAPTER 9
VIRTUAL MEMORY READING: CHAPTER 9 9 MEMORY HIERARCHY Core! Processor! Core! Caching! Main! Memory! (DRAM)!! Caching!! Secondary Storage (SSD)!!!! Secondary Storage (Disk)! L cache exclusive to a single
More informationVirtual Memory. CSCI 315 Operating Systems Design Department of Computer Science
Virtual Memory CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition of the course text Operating
More informationVirtual Memory. Chapter 8
Virtual Memory 1 Chapter 8 Characteristics of Paging and Segmentation Memory references are dynamically translated into physical addresses at run time E.g., process may be swapped in and out of main memory
More informationCSE 120. Translation Lookaside Buffer (TLB) Implemented in Hardware. July 18, Day 5 Memory. Instructor: Neil Rhodes. Software TLB Management
CSE 120 July 18, 2006 Day 5 Memory Instructor: Neil Rhodes Translation Lookaside Buffer (TLB) Implemented in Hardware Cache to map virtual page numbers to page frame Associative memory: HW looks up in
More informationSecond Midterm Exam March 21, 2017 CS162 Operating Systems
University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2017 Ion Stoica Second Midterm Exam March 21, 2017 CS162 Operating Systems Your Name: SID AND 162 Login:
More informationPrimality 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 informationCSE 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 informationECEC 355: Cache Design
ECEC 355: Cache Design November 28, 2007 Terminology Let us first define some general terms applicable to caches. Cache block or line. The minimum unit of information (in bytes) that can be either present
More informationΑπευθείας Υπολογισµός (Online Computation)
ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Απευθείας Υπολογισµός (Online Computation) Κ. Πατρούµπας 24 Μαΐου 2004 24/05/2004 Αλγόριθµοι Εξόρυξης εδοµένων 1 Online
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 33 Virtual Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ How does the virtual
More informationPaging for Multi-Core Shared Caches
Paging for Multi-Core Shared Caches Alejandro López-Ortiz David R. Cheriton School of Computer Science University of Waterloo 200 University Ave. West Waterloo, Ontario, N2L 3G1, Canada alopez-o@uwaterloo.ca
More informationCalculating lower bounds for caching problems
Calculating lower bounds for caching problems Leah Epstein Rob van Stee Abstract We present a general method for computing lower bounds for various caching problems. We apply the method to two well known
More informationSwapping. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Swapping Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE0: Introduction to Operating Systems, Fall 07, Jinkyu Jeong (jinkyu@skku.edu) Swapping
More informationSwapping. 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 informationRecall from Tuesday. Our solution to fragmentation is to split up a process s address space into smaller chunks. Physical Memory OS.
Paging 11/10/16 Recall from Tuesday Our solution to fragmentation is to split up a process s address space into smaller chunks. Physical Memory OS Process 3 Process 3 OS: Place Process 3 Process 1 Process
More informationPast: Making physical memory pretty
Past: Making physical memory pretty Physical memory: no protection limited size almost forces contiguous allocation sharing visible to program easy to share data gcc gcc emacs Virtual memory each program
More informationDAT (cont d) Assume a page size of 256 bytes. physical addresses. Note: Virtual address (page #) is not stored, but is used as an index into the table
Assume a page size of 256 bytes 5 Page table size (determined by size of program) 1 1 0 1 0 0200 00 420B 00 xxxxxx 1183 00 xxxxxx physical addresses Residency Bit (0 page frame is empty) Note: Virtual
More informationComputer Systems II. Memory Management" Subdividing memory to accommodate many processes. A program is loaded in main memory to be executed
Computer Systems II Memory Management" Memory Management" Subdividing memory to accommodate many processes A program is loaded in main memory to be executed Memory needs to be allocated efficiently to
More informationOnline Algorithms with Advice
Online Algorithms with Advice Marc Renault Supervisor: Adi Rosén, Algorithms and Complexity LRI August 21, 2010 This report is written in English as the maternal language of Marc Renault is English and
More informationCS 31: Intro to Systems Virtual Memory. Kevin Webb Swarthmore College November 15, 2018
CS 31: Intro to Systems Virtual Memory Kevin Webb Swarthmore College November 15, 2018 Reading Quiz Memory Abstraction goal: make every process think it has the same memory layout. MUCH simpler for compiler
More informationLecture 14: Cache & Virtual Memory
CS 422/522 Design & Implementation of Operating Systems Lecture 14: Cache & Virtual Memory Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions
More informationa. What is a lower bound on the number of page faults? b. What is an upper bound on the number of page faults?
Virtual Memory 8 CHAPTER Practice Exercises 8.1 Under what circumstances do page faults occur? Describe the actions taken by the operating system when a page fault occurs. A page fault occurs when an access
More informationLecture-16 (Cache Replacement Policies) CS422-Spring
Lecture-16 (Cache Replacement Policies) CS422-Spring 2018 Biswa@CSE-IITK 1 2 4 8 16 32 64 128 From SPEC92 Miss rate: Still Applicable Today 0.14 0.12 0.1 0.08 0.06 0.04 1-way 2-way 4-way 8-way Capacity
More informationVirtual 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 informationLeast 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 informationBasic Page Replacement
Basic Page Replacement 1. Find the location of the desired page on disk 2. Find a free frame: - If there is a free frame, use it - If there is no free frame, use a page replacement algorithm to select
More informationWelcome to the course Algorithm Design
Welcome to the course Algorithm Design Summer Term 2011 Friedhelm Meyer auf der Heide Lecture 12, 8.7.2011 Friedhelm Meyer auf der Heide 1 Randomised Algorithms Friedhelm Meyer auf der Heide 2 Topics -
More informationVirtual 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( D ) 4. Which is not able to solve the race condition? (A) Test and Set Lock (B) Semaphore (C) Monitor (D) Shared memory
CS 540 - Operating Systems - Final Exam - Name: Date: Wenesday, May 12, 2004 Part 1: (78 points - 3 points for each problem) ( C ) 1. In UNIX a utility which reads commands from a terminal is called: (A)
More informationRemoving Belady s Anomaly from Caches with Prefetch Data
Removing Belady s Anomaly from Caches with Prefetch Data Elizabeth Varki University of New Hampshire varki@cs.unh.edu Abstract Belady s anomaly occurs when a small cache gets more hits than a larger cache,
More informationCaching and Demand- Paged Virtual Memory
Caching and Demand- Paged Virtual Memory Defini8ons Cache Copy of data that is faster to access than the original Hit: if cache has copy Miss: if cache does not have copy Cache block Unit of cache storage
More informationSolution for Operating System
Solution for Operating System May 2016 Index Q.1) a). 2 b). 3 c).3-5 d).5-7 Q.2) a). 7-13 b). 13-14 Q.3) a). 15-17 b). 18-19 Q.4) a). N.A b). N.A Q.5) a). 19-25 b). N.A Q.6) a). 26 b). 27-28 c). N.A d).
More informationVirtual Memory. CSCI 315 Operating Systems Design Department of Computer Science
Virtual Memory CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture were based on those Operating Systems Concepts, 9th ed., by Silberschatz, Galvin, and
More information15-740/ Computer Architecture Lecture 12: Advanced Caching. Prof. Onur Mutlu Carnegie Mellon University
15-740/18-740 Computer Architecture Lecture 12: Advanced Caching Prof. Onur Mutlu Carnegie Mellon University Announcements Chuck Thacker (Microsoft Research) Seminar Tomorrow RARE: Rethinking Architectural
More informationCS 4410 Operating Systems. Page Replacement (2) Summer 2016 Cornell University
CS 4410 Operating Systems Page Replacement (2) Summer 2016 Cornell University Today Algorithm that approximates the OPT replacement algorithm. 2 Least Recently Used (LRU) Page Replacement A recently used
More informationPrecise and Efficient FIFO-Replacement Analysis Based on Static Phase Detection
Precise and Efficient FIFO-Replacement Analysis Based on Static Phase Detection Daniel Grund 1 Jan Reineke 2 1 Saarland University, Saarbrücken, Germany 2 University of California, Berkeley, USA Euromicro
More informationLecture#16: VM, thrashing, Replacement, Cache state
Lecture#16: VM, thrashing, Replacement, Cache state Review -- 1 min Multi-level translation tree: multi-level page table, paged paging, paged segmentation, hash table: inverted page table combination:
More informationCS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.
CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. Part 4: Memory Organization Our goal: understand the basic types of memory in computer understand memory hierarchy and the general process to access memory
More informationBasic Memory Management
Basic Memory Management CS 256/456 Dept. of Computer Science, University of Rochester 10/15/14 CSC 2/456 1 Basic Memory Management Program must be brought into memory and placed within a process for it
More informationBasic Memory Management. Basic Memory Management. Address Binding. Running a user program. Operating Systems 10/14/2018 CSC 256/456 1
Basic Memory Management Program must be brought into memory and placed within a process for it to be run Basic Memory Management CS 256/456 Dept. of Computer Science, University of Rochester Mono-programming
More information!! What is virtual memory and when is it useful? !! What is demand paging? !! When should pages in memory be replaced?
Chapter 10: Virtual Memory Questions? CSCI [4 6] 730 Operating Systems Virtual Memory!! What is virtual memory and when is it useful?!! What is demand paging?!! When should pages in memory be replaced?!!
More informationVirtual Memory. Yannis Smaragdakis, U. Athens
Virtual Memory Yannis Smaragdakis, U. Athens Example Modern Address Space (64-bit Linux) location of code : 0x40057d location of heap : 0xcf2010 location of stack : 0x7fff9ca45fcc 0x400000 0x401000 0xcf2000
More informationMEMORY: SWAPPING. Shivaram Venkataraman CS 537, Spring 2019
MEMORY: SWAPPING Shivaram Venkataraman CS 537, Spring 2019 ADMINISTRIVIA - Project 2b is out. Due Feb 27 th, 11:59 - Project 1b grades are out Lessons from p2a? 1. Start early! 2. Sketch out a design?
More informationAnalysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation
Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee Department of Computer and Information Science
More informationHow 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 informationTiming Anomalies Reloaded
Gernot Gebhard AbsInt Angewandte Informatik GmbH 1 of 20 WCET 2010 Brussels Belgium Timing Anomalies Reloaded Gernot Gebhard AbsInt Angewandte Informatik GmbH Brussels, 6 th July, 2010 Gernot Gebhard AbsInt
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 informationComp Online Algorithms
Comp 7720 - Online Algorithms Notes 4: Bin Packing Shahin Kamalli University of Manitoba - Fall 208 December, 208 Introduction Bin packing is one of the fundamental problems in theory of computer science.
More informationCMPSC 311- Introduction to Systems Programming Module: Caching
CMPSC 311- Introduction to Systems Programming Module: Caching Professor Patrick McDaniel Fall 2016 Reminder: Memory Hierarchy L0: Registers CPU registers hold words retrieved from L1 cache Smaller, faster,
More informationChapter 4: Memory Management. Part 1: Mechanisms for Managing Memory
Chapter 4: Memory Management Part 1: Mechanisms for Managing Memory Memory management Basic memory management Swapping Virtual memory Page replacement algorithms Modeling page replacement algorithms Design
More informationLecture 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 information3/3/2014! Anthony D. Joseph!!CS162! UCB Spring 2014!
Post Project 1 Class Format" CS162 Operating Systems and Systems Programming Lecture 11 Page Allocation and Replacement" Mini quizzes after each topic Not graded Simple True/False Immediate feedback for
More informationOperating Systems Virtual Memory. Lecture 11 Michael O Boyle
Operating Systems Virtual Memory Lecture 11 Michael O Boyle 1 Paged virtual memory Allows a larger logical address space than physical memory All pages of address space do not need to be in memory the
More informationMost common example today: wireless (cell) phones
Virtual Memory Separate the concept of: address space (name) from physical memory address (location) Most common example today: wireless (cell) phones Phone number is your id or name Location varies as
More informationPower and Energy Normalized Speedup Models for Heterogeneous Many Core Computing
ACSD 2016 Power and Energy Normalized Speedup Models for Heterogeneous Many Core Computing Mohammed A. N. Al-hayanni 1, Ashur Rafiev 2, Rishad Shafik 1, Fei Xia 1 School of EEE 1 and CS 2, Newcastle University
More informationVirtual Memory - Overview. Programmers View. Virtual Physical. Virtual Physical. Program has its own virtual memory space.
Virtual Memory - Overview Programmers View Process runs in virtual (logical) space may be larger than physical. Paging can implement virtual. Which pages to have in? How much to allow each process? Program
More informationCSE 521: Design and Analysis of Algorithms I
CSE 521: Design and Analysis of Algorithms I Greedy Algorithms Paul Beame 1 Greedy Algorithms Hard to define exactly but can give general properties Solution is built in small steps Decisions on how to
More informationPAGE 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 informationExperiments 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 informationLocality of Reference
Locality of Reference 1 In view of the previous discussion of secondary storage, it makes sense to design programs so that data is read from and written to disk in relatively large chunks but there is
More informationOnline file caching with rejection penalties
Online file caching with rejection penalties Leah Epstein Csanád Imreh Asaf Levin Judit Nagy-György Abstract In the file caching problem, the input is a sequence of requests for files out of a slow memory.
More informationVirtual Memory. Overview: Virtual Memory. Virtual address space of a process. Virtual Memory
TDIU Operating systems Overview: Virtual Memory Virtual Memory Background Demand Paging Page Replacement Allocation of Frames Thrashing and Data Access Locality [SGG7/8/9] Chapter 9 Copyright Notice: The
More informationVirtual Memory. 1 Administrivia. Tom Kelliher, CS 240. May. 1, Announcements. Homework, toolboxes due Friday. Assignment.
Virtual Memory Tom Kelliher, CS 240 May. 1, 2002 1 Administrivia Announcements Homework, toolboxes due Friday. Assignment From Last Time Introduction to caches. Outline 1. Virtual memory. 2. System support:
More informationQ3: Block Replacement. Replacement Algorithms. ECE473 Computer Architecture and Organization. Memory Hierarchy: Set Associative Cache
Fundamental Questions Computer Architecture and Organization Hierarchy: Set Associative Q: Where can a block be placed in the upper level? (Block placement) Q: How is a block found if it is in the upper
More informationCache Replacement Policies for Multicore Processors
Innovations in Computer Science 2010 Cache Replacement Policies for Multicore Processors Avinatan Hassidim MIT, Cambridge, MA 02139, USA avinatanh@gmail.com Abstract: Almost all of the modern computers
More informationCOMP Online Algorithms. k-server Problem & Advice. Shahin Kamali. Lecture 13 - Oct. 24, 2017 University of Manitoba
COMP 7720 - Online Algorithms k-server Problem & Advice Shahin Kamali Lecture 13 - Oct. 24, 2017 University of Manitoba COMP 7720 - Online Algorithms k-server Problem & Advice 1 / 20 Review & Plan COMP
More informationCache Policies. Philipp Koehn. 6 April 2018
Cache Policies Philipp Koehn 6 April 2018 Memory Tradeoff 1 Fastest memory is on same chip as CPU... but it is not very big (say, 32 KB in L1 cache) Slowest memory is DRAM on different chips... but can
More informationMemory Management. To improve CPU utilization in a multiprogramming environment we need multiple programs in main memory at the same time.
Memory Management To improve CPU utilization in a multiprogramming environment we need multiple programs in main memory at the same time. Basic CPUs and Physical Memory CPU cache Physical memory
More informationMemory Management. Outline. Memory. Virtual Memory. Instructor: Dr. Tongping Liu
Outline Memory Management Instructor: Dr Tongping Liu Virtual memory Page-based memory management Ø Page table and address translation Multi-level page table Translation lookaside buffer (TLB) Demand paging
More informationComp Online Algorithms
Comp 7720 - Online Algorithms Assignment 2: Compression, Splay Trees, Caching, and k-server Shahin Kamalli University of Manitoba - Fall 2018 Due: Monday, October 22th at 11:59 pm October 27, 2018 [Computer
More informationLocality. CS429: Computer Organization and Architecture. Locality Example 2. Locality Example
Locality CS429: Computer Organization and Architecture Dr Bill Young Department of Computer Sciences University of Texas at Austin Principle of Locality: Programs tend to reuse data and instructions near
More informationA Primal-Dual Approach for Online Problems. Nikhil Bansal
A Primal-Dual Approach for Online Problems Nikhil Bansal Online Algorithms Input revealed in parts. Algorithm has no knowledge of future. Scheduling, Load Balancing, Routing, Caching, Finance, Machine
More informationCS450/550 Operating Systems
CS450/550 Operating Systems Lecture 4 memory Palden Lama Department of Computer Science CS450/550 Memory.1 Review: Summary of Chapter 3 Deadlocks and its modeling Deadlock detection Deadlock recovery Deadlock
More informationCSE 451: Operating Systems. Section 10 Project 3 wrap-up, final exam review
CSE 451: Operating Systems Section 10 Project 3 wrap-up, final exam review Final exam review Goal of this section: key concepts you should understand Not just a summary of lectures Slides coverage and
More informationWeek 2: Tiina Niklander
Virtual memory Operations and policies Chapters 3.4. 3.6 Week 2: 17.9.2009 Tiina Niklander 1 Policies and methods Fetch policy (Noutopolitiikka) When to load page to memory? Placement policy (Sijoituspolitiikka
More informationPrinciples 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 informationCS 153 Design of Operating Systems Winter 2016
CS 153 Design of Operating Systems Winter 2016 Lecture 18: Page Replacement Terminology in Paging A virtual page corresponds to physical page/frame Segment should not be used anywhere Page out = Page eviction
More informationReal-time integrated prefetching and caching
Real-time integrated prefetching and caching Peter Sanders Johannes Singler Rob van Stee September 26, 2012 Abstract The high latencies for access to background memory like hard disks or flash memory can
More informationMemory. 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 informationOperating Systems, Fall
Policies and methods Virtual memory Operations and policies Chapters 3.4. 3.6 Week 2: 17.9.2009 Tiina Niklander 1 Fetch policy (Noutopolitiikka) When to load page to memory? Placement policy (Sijoituspolitiikka
More information