Chapter 2 Memory Hierarchy Design
Introduction
Memory Architecture Optimization Problem
[Objective] Memory Demand
- Good data access performance
- Low data access latency
- High data access bandwidth
- Low cost & power
[Constraint] Memory Hardware
- Different storage mediums:
- trade-off in bandwidth, latency, cost, etc.
[Solution] Memory Architecture Design
- Basic Memory Hierarchy
- Cache Optimizations
- Basic
- Advanced
Optimization Demand
- Memory-processor Latency Gap
- Single Processor (demand)
- memory requests per second
- Single Bank DRAM (supply)
- DRAM accesses per second
- Single Processor (demand)
- Memory-processor Bandwidth Gap
- Processor’s peak bandwidth demand grows with # of cores
- DRAM’s bandwidth capability grows much slower
- Only 8% of the peak processor demand
Hardware Constraints: Trade-off
- Capacity
- Latency & bandwidth
- Power & cost
Memory Hierarchy Basics
Architecture Solution: Memory Hierarchy
Solution: Organize memory system into a hierarchy
- Inclusion property: Incrementally smaller and faster memories, each containing a subset of the memory below it
- Gives the allusion of a large, fast memory being presented to the processor
Why it works: Locality
- Temporal and spatial locality insures that most recent references can be found in a small set
- Performance and coverage are not required concurrently