Alternative Models for Online Analysis Alex López-Ortiz University of Waterloo joint work with Reza Dorrigiv, Spyros Angelopoulos and Ian Munro.

Slides:



Advertisements
Similar presentations
Page Replacement Algorithms
Advertisements

Background Virtual memory – separation of user logical memory from physical memory. Only part of the program needs to be in memory for execution. Logical.
Paging: Design Issues. Readings r Silbershatz et al: ,
Outperforming LRU with an Adaptive Replacement Cache Algorithm Nimrod megiddo Dharmendra S. Modha IBM Almaden Research Center.
Data Mining Methodology 1. Why have a Methodology  Don’t want to learn things that aren’t true May not represent any underlying reality ○ Spurious correlation.
Online Algorithms Amrinder Arora Permalink:
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Princeton University COS 423 Theory of Algorithms Spring 2001 Kevin Wayne Competitive Analysis.
Online Algor ithm Paging and Caching. Caching (paging) Structure of data storage Cache memory : Static RAM Level 1 Cache Level 2 Cache Main memory Hard.
Vision Based Control Motion Matt Baker Kevin VanDyke.
GIS Error and Uncertainty Longley et al., chs. 6 (and 15) Sources: Berry online text, Dawn Wright.
Active Calibration of Cameras: Theory and Implementation Anup Basu Sung Huh CPSC 643 Individual Presentation II March 4 th,
Dynamic Internet Congestion with Bursts Stefan Schmid Roger Wattenhofer Distributed Computing Group, ETH Zurich 13th International Conference On High Performance.
Operating System Support Focus on Architecture
Institute of Computer Science University of Wroclaw Page Migration in Dynamic Networks Marcin Bieńkowski Joint work with: Jarek Byrka (Centrum voor Wiskunde.
1 Chapter Seven Large and Fast: Exploiting Memory Hierarchy.
Towards a Theory of Cache-Efficient Algorithms Summary for the seminar: Analysis of algorithms in hierarchical memory – Spring 2004 by Gala Golan.
Shuchi Chawla, Carnegie Mellon University Static Optimality and Dynamic Search Optimality in Lists and Trees Avrim Blum Shuchi Chawla Adam Kalai 1/6/2002.
A TCP With Guaranteed Performance in Networks with Dynamic Congestion and Random Wireless Losses Stefan Schmid, ETH Zurich Roger Wattenhofer, ETH Zurich.
Caching I Andreas Klappenecker CPSC321 Computer Architecture.
Ecole Polytechnique, Nov 7, Online Job Scheduling Marek Chrobak University of California, Riverside.
Models of Human Performance Dr. Chris Baber. 2 Objectives Introduce theory-based models for predicting human performance Introduce competence-based models.
Evaluation of Algorithms for the List Update Problem Suporn Pongnumkul R. Ravi Kedar Dhamdhere.
1  2004 Morgan Kaufmann Publishers Chapter Seven.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.
The Hardness of Cache Conscious Data Placement Erez Petrank, Technion Dror Rawitz, Caesarea Rothschild Institute Appeared in 29 th ACM Conference on Principles.
1 Last Time: Paging Motivation Page Tables Hardware Support Benefits.
Video Compression Concepts Nimrod Peleg Update: Dec
Paging for Multi-Core Shared Caches Alejandro López-Ortiz, Alejandro Salinger ITCS, January 8 th, 2012.
Memory Management Last Update: July 31, 2014 Memory Management1.
Minimizing Cache Usage in Paging Alejandro Salinger University of Waterloo Joint work with Alex López-Ortiz.
CS Machine Learning. What is Machine Learning? Adapt to / learn from data  To optimize a performance function Can be used to:  Extract knowledge.
1/24 Algorithms for Generalized Caching Nikhil Bansal IBM Research Niv Buchbinder Open Univ. Israel Seffi Naor Technion.
Maninder Kaur VIRTUAL MEMORY 24-Nov
Chapter 3 Memory Management: Virtual Memory
Lecture 11: DMBS Internals
Software Reliability SEG3202 N. El Kadri.
Online Algorithms and Competitive Analysis. Paging Algorithms Data brought from slower memory into cache RAM CPU.
Online Paging Algorithm By: Puneet C. Jain Bhaskar C. Chawda Yashu Gupta Supervisor: Dr. Naveen Garg, Dr. Kavitha Telikepalli.
Chapter 4 Memory Management.
Minimizing Cache Usage in Paging Alejandro López-Ortiz, Alejandro Salinger University of Waterloo.
An Optimal Cache-Oblivious Priority Queue and Its Applications in Graph Algorithms By Arge, Bender, Demaine, Holland-Minkley, Munro Presented by Adam Sheffer.
Qingqing Gan Torsten Suel CSE Department Polytechnic Institute of NYU Improved Techniques for Result Caching in Web Search Engines.
How to Build a CPU Cache COMP25212 – Lecture 2. Learning Objectives To understand: –how cache is logically structured –how cache operates CPU reads CPU.
Chapter 21 Virtual Memoey: Policies Chien-Chung Shen CIS, UD
External Storage Primary Storage : Main Memory (RAM). Secondary Storage: Peripheral Devices –Disk Drives –Tape Drives Secondary storage is CHEAP. Secondary.
1 Online algorithms Typically when we solve problems and design algorithms we assume that we know all the data a priori. However in many practical situations.
CPSC 404, Laks V.S. Lakshmanan1 External Sorting Chapter 13: Ramakrishnan & Gherke and Chapter 2.3: Garcia-Molina et al.
1 Virtual Machine Memory Access Tracing With Hypervisor Exclusive Cache USENIX ‘07 Pin Lu & Kai Shen Department of Computer Science University of Rochester.
Stefan Rührup 1 HEINZ NIXDORF INSTITUTE University of Paderborn, Germany Algorithms and Complexity Competitive Time and Traffic Analysis of Position-based.
CS 3204 Operating Systems Godmar Back Lecture 21.
A BRIEF INTRODUCTION TO CACHE LOCALITY YIN WEI DONG 14 SS.
COMP SYSTEM ARCHITECTURE HOW TO BUILD A CACHE Antoniu Pop COMP25212 – Lecture 2Jan/Feb 2015.
Vision-based SLAM Enhanced by Particle Swarm Optimization on the Euclidean Group Vision seminar : Dec Young Ki BAIK Computer Vision Lab.
1  2004 Morgan Kaufmann Publishers Locality A principle that makes having a memory hierarchy a good idea If an item is referenced, temporal locality:
Motion Estimation Multimedia Systems and Standards S2 IF Telkom University.
1 Copyright © 2003 KAIST All Rights Reserved. Using Semantic Caching to Manage Location Dependent Data in Mobile Computing CS 744 Database Lab.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00-6:00 PM.
A Graph Theoretic Approach to Cache-Conscious Placement of Data for Direct Mapped Caches Mirza Beg and Peter van Beek University of Waterloo June
COS 318: Operating Systems Virtual Memory Paging.
Better Algorithms for Better Computers
ITEC 202 Operating Systems
Chapter 21 Virtual Memoey: Policies
Memory Management 6/20/ :27 PM
CS b659: Intelligent Robotics
Static Optimality and Dynamic Search Optimality in Lists and Trees
CGS 3763 Operating Systems Concepts Spring 2013
Performance metrics for caches
Performance metrics for caches
Performance metrics for caches
Presentation transcript:

Alternative Models for Online Analysis Alex López-Ortiz University of Waterloo joint work with Reza Dorrigiv, Spyros Angelopoulos and Ian Munro

Competitive analysis drawbacks Sometimes too pessimistic Focus on worst case at the expense of every-day case Uses off-line optimum concept Perhaps one of the reasons for the theoretical vs practical motion planning divide?

Paging: A case study One of the earliest problems to be studied under the online model Competitive analysis not always satisfactory, too pessimistic A good starting point for considering alternatives “Real life” inputs well understood and characterized (temporal + spatial locality)

Paging Algorithms Data brought from slower memory into cache RAM CPU

Paging Algorithms Data brought from slower memory into cache Unit of transfer: pages of equal size Paging algorithm ≡ Eviction policy Commonly studied under competitive ratio framework All lazy marking algorithms are “optimal”

Theory 1.Commonly studied under competitive ratio framework 2.Worst case analysis 3.Marking algorithms optimal 4.In practice LRU is best 5.LFD is offline optimal 6.Competitive ratio is k 7.User is malicious adversary Systems 1.Commonly studied using fault rate measure 2.Typical case analysis 3.LRU and friends is best 4.LRU is impractical 5.Huh? 6.Competitive ratio is 2 or 3 7.User is your friend

Online motion planning 1.Commonly studied under competitive ratio framework 2.Worst case analysis 3.Continuous curved motions 4.Perfect scans 5.Flawless detection 6.No error in motion 7.Architects are your enemy Robotics 1.Commonly studied using distance & scan cost 2.Typical case analysis 3.Piecewise linear 4.Scanning error 5.High detection error 6.Forward & rotational lag 7.Architects are your friend

“Architects are your friend” Most of the time, anyhow.

Fix the Theory-Practice disconnect 1.Make both columns match How? Fix reality or Fix the model A more realistic theoretical model is likely to lead to practical insights

Previous work (paging case) 1.Disconnect has been noted before. 2.Has been subject of intense study, viz. 1.Borodin et al. 2.Karlin et al. 3.Koutsoupias and Papadimitriou 4.Sleator and Tarjan 5.Denning 6.Young 7.Albers et al. 8.Boyar et al. + many others

Theory 1.Commonly studied under competitive ratio framework 2.Worst case analysis 3.Marking algorithms optimal 4.In practice LRU is best 5.LFD is offline optimal 6.Competitive ratio is k 7.User is malicious adversary Systems 1.Commonly studied using fault rate measure 2.Typical case analysis 3.LRU and friends is best 4.LRU is impractical 5.Huh? 6.Competitive ratio is 2 or 3 7.User is your friend

Results 1.competitive ratio framework/fault rate framework –new model which incorporates fault rate considerations (concave analysis) 2.worst case analysis/typical case analysis –model focuses on “every-case” analysis, not just worst case (bijective analysis)

Results marking algorithms optimal/LRU and friends is best –LRU is unique optimum under new model in practice LRU is best/LRU is impractical –initiated study of computationally limited caching strategies

Results LFD is offline optimal/huh? –removed concept of offline optimum competitive ratio is k/competitive ratio is 2 or 3 –Nothing to do!

Results user is malicious adversary/user is your friend –incorporated assumption of locality of reference in our analysis Applies to other online problems e.g. list access This leads to a new notion called cooperative ratio

Cooperative ratio Agreement between user and algorithm about inputs which are: –likely –common –good –important

Cooperative ratio Badly written code (not cache conscious) –(Rightly) considered the programmer’s fault –Paging strategy not responsible for predicting non-standard paging behaviour Well written code (cache conscious) –Code can rely on well defined paging behaviour to produce better code (e.g. I/O model, cache oblivious model)

Cooperative ratio for motion planning Robot must search efficiently scenes which are “reasonable” Can perform somewhat worse in “unreasonable” scenes Leads to adaptive-style analysis. E.g. define niceness measure of office floor plan in terms of orthogonality of scene, number of rooms/corridors, size of smallest relevant feature, etc.

Cooperative ratio for motion planning Look around the corner Leads to “straighter” curve Applicable to polygon recognition (work in progress)

Conclusions Improved model for paging Bridged theory-practice disconnect Next talk: Unique optimality of LRU under new, more realistic model New cooperative analysis model applicable to online research