Cache Data Compaction: Milestone 2 Edward Ma, Siva Penke, Abhijeeth Nuthan.

Slides:



Advertisements
Similar presentations
Hardware Managed Scratchpad for Embedded Systems Ben Rudzyn.
Advertisements

10/20: Lecture Topics HW 3 Problem 2 Caches –Types of cache misses –Cache performance –Cache tradeoffs –Cache summary Input/Output –Types of I/O Devices.
1 Lecture 16: Large Cache Design Papers: An Adaptive, Non-Uniform Cache Structure for Wire-Dominated On-Chip Caches, Kim et al., ASPLOS’02 Distance Associativity.
Recitation 7 Caching By yzhuang. Announcements Pick up your exam from ECE course hub ◦ Average is 43/60 ◦ Final Grade computation? See syllabus
Memory Hierarchy. Smaller and faster, (per byte) storage devices Larger, slower, and cheaper (per byte) storage devices.
The Lord of the Cache Project 3. Caches Three common cache designs: Direct-Mapped store in exactly one cache line Fully Associative store in any cache.
Memory Management Design & Implementation Segmentation Chapter 4.
Overview of Cache and Virtual MemorySlide 1 The Need for a Cache (edited from notes with Behrooz Parhami’s Computer Architecture textbook) Cache memories.
LRU Replacement Policy Counters Method Example
Performance Evaluation of IPv6 Packet Classification with Caching Author: Kai-Yuan Ho, Yaw-Chung Chen Publisher: ChinaCom 2008 Presenter: Chen-Yu Chaug.
1 Lecture 11: Large Cache Design Topics: large cache basics and… An Adaptive, Non-Uniform Cache Structure for Wire-Dominated On-Chip Caches, Kim et al.,
Virtual Memory BY JEMINI ISLAM. What is Virtual Memory Virtual memory is a memory management system that gives a computer the appearance of having more.
COEN 180 Main Memory Cache Architectures. Basics Speed difference between cache and memory is small. Therefore:  Cache algorithms need to be implemented.
EECS 370 Discussion 1 SMBC. EECS 370 Discussion Exam 2 Solutions posted online Will be returned in next discussion (12/9) – Grades hopefully up on CTools.
Caches – basic idea Small, fast memory Stores frequently-accessed blocks of memory. When it fills up, discard some blocks and replace them with others.
Memory Management ◦ Operating Systems ◦ CS550. Paging and Segmentation  Non-contiguous memory allocation  Fragmentation is a serious problem with contiguous.
CacheLab 10/10/2011 By Gennady Pekhimenko. Outline Memory organization Caching – Different types of locality – Cache organization Cachelab – Warnings.
Lecture 10 Memory Hierarchy and Cache Design Computer Architecture COE 501.
Ioana Burcea * Stephen Somogyi §, Andreas Moshovos*, Babak Falsafi § # Predictor Virtualization *University of Toronto Canada § Carnegie Mellon University.
How to Build a CPU Cache COMP25212 – Lecture 2. Learning Objectives To understand: –how cache is logically structured –how cache operates CPU reads CPU.
CacheLab Recitation 7 10/8/2012. Outline Memory organization Caching – Different types of locality – Cache organization Cachelab – Tips (warnings, getopt,
10/18: Lecture topics Memory Hierarchy –Why it works: Locality –Levels in the hierarchy Cache access –Mapping strategies Cache performance Replacement.
Caltech CS184b Winter DeHon 1 CS184b: Computer Architecture [Single Threaded Architecture: abstractions, quantification, and optimizations] Day14:
Computer Architecture Memory organization. Types of Memory Cache Memory Serves as a buffer for frequently accessed data Small  High Cost RAM (Main Memory)
L/O/G/O Cache Memory Chapter 3 (b) CS.216 Computer Architecture and Organization.
CPE432 Chapter 5A.1Dr. W. Abu-Sufah, UJ Chapter 5A: Exploiting the Memory Hierarchy, Part 2 Adapted from Slides by Prof. Mary Jane Irwin, Penn State University.
Computer Architecture Lecture 26 Fasih ur Rehman.
3-May-2006cse cache © DW Johnson and University of Washington1 Cache Memory CSE 410, Spring 2006 Computer Systems
Lecture 5 Cache Operation ECE 463/521 Fall 2002 Edward F. Gehringer Based on notes by Drs. Eric Rotenberg & Tom Conte of NCSU.
Additional Slides By Professor Mary Jane Irwin Pennsylvania State University Group 3.
COMP SYSTEM ARCHITECTURE HOW TO BUILD A CACHE Antoniu Pop COMP25212 – Lecture 2Jan/Feb 2015.
DECStation 3100 Block Instruction Data Effective Program Size Miss Rate Miss Rate Miss Rate 1 6.1% 2.1% 5.4% 4 2.0% 1.7% 1.9% 1 1.2% 1.3% 1.2% 4 0.3%
11 Intro to cache memory Kosarev Nikolay MIPT Nov, 2009.
Lecture 17 Final Review Prof. Mike Schulte Computer Architecture ECE 201.
Cache (Memory) Performance Optimization. Average memory access time = Hit time + Miss rate x Miss penalty To improve performance: reduce the miss rate.
Lecture 20 Last lecture: Today’s lecture: Types of memory
Memory Management memory hierarchy programs exhibit locality of reference - non-uniform reference patterns temporal locality - a program that references.
Memory Hierarchy and Cache. A Mystery… Memory Main memory = RAM : Random Access Memory – Read/write – Multiple flavors – DDR SDRAM most common 64 bit.
Computer Orgnization Rabie A. Ramadan Lecture 9. Cache Mapping Schemes.
Lecture 5 Cache Operation
Calling Conventions, Caching
Two Dimensional Highly Associative Level-Two Cache Design
Vivek Seshadri 15740/18740 Computer Architecture
Virtual Memory Chapter 7.4.
Caches Samira Khan March 23, 2017.
Address – 32 bits WRITE Write Cache Write Main Byte Offset Tag Index Valid Tag Data 16K entries 16.
COSC3330 Computer Architecture
CSE 351 Section 9 3/1/12.
Cache Performance Samira Khan March 28, 2017.
18-447: Computer Architecture Lecture 23: Caches
Associativity in Caches Lecture 25
Multilevel Memories (Improving performance using alittle “cash”)
Some Real Problem What if a program needs more memory than the machine has? even if individual programs fit in memory, how can we run multiple programs?
5.2 Eleven Advanced Optimizations of Cache Performance
Cache Memory Presentation I
Consider a Direct Mapped Cache with 4 word blocks
Morgan Kaufmann Publishers
Lecture 28: Virtual Memory-Address Translation
Bojian Zheng CSCD70 Spring 2018
Part V Memory System Design
Module IV Memory Organization.
Module IV Memory Organization.
CDA 5155 Caches.
CMSC 611: Advanced Computer Architecture
Translation Buffers (TLB’s)
CS 3410, Spring 2014 Computer Science Cornell University
Translation Buffers (TLB’s)
CSC3050 – Computer Architecture
Translation Buffers (TLBs)
10/18: Lecture Topics Using spatial locality
Presentation transcript:

Cache Data Compaction: Milestone 2 Edward Ma, Siva Penke, Abhijeeth Nuthan

Concept Divide super-cache lines into smaller cache lines By having the larger super-cache lines we can save space in the tag store while maintaining the benefit for locality and bandwidth by having a smaller cache-line granularity. A pointer in the tag array stores location of first data in super cache-line

Progress From Last Milestone Implemented the modified tag store and data store into the simulator, with basic replacement and placement policy. Have some preliminary results comparing our implementation with conventional caches (in terms of hit rate) Savings vs. Conventional Cache Tag Store M = Addressable Memory Space, B = Block Size, C = Cache Size, N = Number of cache lines per super cache line.

Process Flow Chart

Some Numbers (Hit Rate)

Still to be Done The Latency Delays for the Data Movement – the likely method will be to multiply a constant by the number of entries we have to reorder The reordering issue will hopefully be alleviated by a more complex placement policy (we may evict even when the data store is not completely full if it means less data have to be reordered in the cache) and also offset bits in the tag store (which will determine the subsequent cache line locations as a function of offset from the pointer address) LRU will be replaced with a more realistic and cheaper replacement policy that can be implemented in hardware (Pseudo-LRU, perhaps?)