ECE 463/563 Fall `18 Memory Hierarchies, Cache Memories H&P: Appendix B and Chapter 2 Prof. Eric Rotenberg Fall 2018 ECE 463/563, Microprocessor Architecture,

Slides:



Advertisements
Similar presentations
COMP375 Computer Architecture and Organization Senior Review.
Advertisements

Lecture 19: Cache Basics Today’s topics: Out-of-order execution
CMPE 421 Parallel Computer Architecture MEMORY SYSTEM.
CML CML CS 230: Computer Organization and Assembly Language Aviral Shrivastava Department of Computer Science and Engineering School of Computing and Informatics.
Spring 2003CSE P5481 Introduction Why memory subsystem design is important CPU speeds increase 55% per year DRAM speeds increase 3% per year rate of increase.
Chapter 101 Virtual Memory Chapter 10 Sections and plus (Skip:10.3.2, 10.7, rest of 10.8)
CSCE 212 Chapter 7 Memory Hierarchy Instructor: Jason D. Bakos.
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon, Oct 31, 2005 Topic: Memory Hierarchy Design (HP3 Ch. 5) (Caches, Main Memory and.
Memory Organization.
Computer ArchitectureFall 2007 © November 7th, 2007 Majd F. Sakr CS-447– Computer Architecture.
Caching I Andreas Klappenecker CPSC321 Computer Architecture.
1 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4 to 6 transistors) DRAM: –value is stored as a charge.
1 CSE SUNY New Paltz Chapter Seven Exploiting Memory Hierarchy.
Systems I Locality and Caching
CS1104: Computer Organisation School of Computing National University of Singapore.
COEN/ELEN 180 Storage Systems Memory Hierarchy. We are therefore forced to recognize the possibility of constructing a hierarchy of memories, each of.
EECS 318 CAD Computer Aided Design LECTURE 10: Improving Memory Access: Direct and Spatial caches Instructor: Francis G. Wolff Case.
Memory/Storage Architecture Lab Computer Architecture Memory Hierarchy.
Lecture 10 Memory Hierarchy and Cache Design Computer Architecture COE 501.
Lecture 19 Today’s topics Types of memory Memory hierarchy.
0 High-Performance Computer Architecture Memory Organization Chapter 5 from Quantitative Architecture January 2006.
Chapter 9 Memory Organization By Jack Chung. MEMORY? RAM?
EEL5708/Bölöni Lec 4.1 Fall 2004 September 10, 2004 Lotzi Bölöni EEL 5708 High Performance Computer Architecture Review: Memory Hierarchy.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
COEN 180 Memory Hierarchy. We are therefore forced to recognize the possibility of constructing a hierarchy of memories, each of which has greater capacity.
1010 Caching ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.
Lecture#15. Cache Function The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that.
Memory Architecture Chapter 5 in Hennessy & Patterson.
1 Chapter Seven. 2 Users want large and fast memories! SRAM access times are ns at cost of $100 to $250 per Mbyte. DRAM access times are ns.
Multilevel Caches Microprocessors are getting faster and including a small high speed cache on the same chip.
1 Chapter Seven CACHE MEMORY AND VIRTUAL MEMORY. 2 SRAM: –value is stored on a pair of inverting gates –very fast but takes up more space than DRAM (4.
1 Chapter Seven. 2 Users want large and fast memories! SRAM access times are ns at cost of $100 to $250 per Mbyte. DRAM access times are ns.
1  1998 Morgan Kaufmann Publishers Chapter Seven.
Topics in Memory System Design 2016/2/5\course\cpeg323-07F\Topic7.ppt1.
Lecture 5: Memory Performance. Types of Memory Registers L1 cache L2 cache L3 cache Main Memory Local Secondary Storage (local disks) Remote Secondary.
The Memory Hierarchy (Lectures #17 - #20) ECE 445 – Computer Organization The slides included herein were taken from the materials accompanying Computer.
What is it and why do we need it? Chris Ward CS147 10/16/2008.
Computer Organization CS224 Fall 2012 Lessons 37 & 38.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
Virtual Memory By CS147 Maheshpriya Venkata. Agenda Review Cache Memory Virtual Memory Paging Segmentation Configuration Of Virtual Memory Cache Memory.
1 Lecture 20: OOO, Memory Hierarchy Today’s topics:  Out-of-order execution  Cache basics.
CMSC 611: Advanced Computer Architecture Memory & Virtual Memory Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material.
CS 704 Advanced Computer Architecture
Computer Organization
Yu-Lun Kuo Computer Sciences and Information Engineering
The Goal: illusion of large, fast, cheap memory
CS352H: Computer Systems Architecture
Ramya Kandasamy CS 147 Section 3
Architecture Background
CS 105 Tour of the Black Holes of Computing
Cache Memory Presentation I
Morgan Kaufmann Publishers Memory & Cache
The Memory Hierarchy Chapter 5
ReCap Random-Access Memory (RAM) Nonvolatile Memory
Lecture 21: Memory Hierarchy
CMSC 611: Advanced Computer Architecture
CS 105 Tour of the Black Holes of Computing
Memory Hierarchy Memory: hierarchy of components of various speeds and capacities Hierarchy driven by cost and performance In early days Primary memory.
Memory Organization.
Lecture 20: OOO, Memory Hierarchy
Lecture 20: OOO, Memory Hierarchy
2.C Memory GCSE Computing Langley Park School for Boys.
Contents Memory types & memory hierarchy Virtual memory (VM)
Virtual Memory Prof. Eric Rotenberg
Overview Prof. Eric Rotenberg
Memory Hierarchy Memory: hierarchy of components of various speeds and capacities Hierarchy driven by cost and performance In early days Primary memory.
Fundamentals of Computing: Computer Architecture
Cache Memory and Performance
Lecture 2 (Memory) Computer Organization and Assembly Language. (CSC-210) Dr. Mohammad Ammad uddin.
Memory Principles.
Presentation transcript:

ECE 463/563 Fall `18 Memory Hierarchies, Cache Memories H&P: Appendix B and Chapter 2 Prof. Eric Rotenberg Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

Processor-memory performance gap CPU 60%/yr. (2X/1.5yr) 1000 CPU 100 processor-memory performance gap (grew 50% / year) Performance 10 DRAM 9%/yr. (2X/10 yrs) DRAM 1 1980 1981 1982 1983 1984 1985 1986 1987 1988 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 1989 Time Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg Why main memory is slow Implementation technology optimized for density (cost), not speed DRAM 1T-1C cell Dense Slower to access than other technologies (e.g., SRAM 6T cell) Many bits per unit area Cost per bit is low More storage for same cost as faster technologies Main memory is a very large RAM Accessing a larger RAM is inherently slower than accessing a smaller RAM Regardless of the implementation technology Larger address decoders, longer routing to banks, longer wordlines/bitlines within banks, etc. Going off chip is slow I/O pads, memory bus, memory controller, then DRAM chip High latency Low bandwidth Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg Quote from 1946 “Ideally one would desire an indefinitely large memory capacity such that any particular … word would be immediately available … We are … forced to recognize the possibility of constructing a hierarchy of memories, each of which has greater capacity than the preceding but which is less quickly accessible.” A. W. Burks, H. H. Goldstine, and J. von Neumann Preliminary Discussion of the Logical Design of an Electronic Computing Instrument (1946) Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg Locality of Reference Temporal locality: Recently accessed items are likely to be re-accessed soon Implies: Keep recently accessed items close by (in a cache) Spatial locality: Items with addresses near one another are likely to be accessed close together in time Sequential locality (special case): next item accessed is likely to be at the next sequential address in memory Implies: Fetch the “nearest neighbors” of an item when fetching the item (fetch a large memory block) Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

How caches work (very high level) A cached memory block is “tagged” with its address in main memory (so that it can be searched for within the cache) As a black box: Cache searches for memory block X CPU asks for a word that is part of memory block X (X is the address of the referenced memory block) CPU gets requested word (it never talks to main memory) If not there, cache asks main memory for memory block X (called a cache miss) Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg

Simple Memory Hierarchy CPU registers data cache instruction cache load store Level 1 or “L1” caches cache miss unified data+inst. L2 cache cache miss memory bus physical memory (e.g., DIMMs) OS page fault handler page fault disk (not germane to virtual memory discussion) user files in filesystem. “swap file” on disk gives appearance of a larger virtual memory than even the physical memory Fall 2018 ECE 463/563, Microprocessor Architecture, Prof. Eric Rotenberg