To minimize the average memory access time, techniques include:
- Reducing hit time, miss a penalty, or miss rate.
- Reducing the product of miss penalty and miss rate.
Techniques for reducing hit time
- Implementing small and simple caches.
- Using trace caches and pipelined cache access.
- Avoiding time loss in address translation.
Techniques for reducing missed penalties
- Utilizing multi-level caches.
- Giving priority to read misses overwrites.
- Implementing victim caches.
Techniques for reducing miss rate
- Increasing block size.
- Employing higher associativity.
- Utilizing compiler optimization.
- Implementing larger caches.
Techniques for reducing the product of miss rate and miss penalty
- Implementing non-blocking caches.
- Utilizing hardware pre-fetching.
- Employing compiler-controlled pre-fetching.