<1/2X latency x 3X clock rate x 3X Instr/clock X
北京大学计算机科学技术系
北京大学微处理器研究开发中心
北京大学计算机科学技术系
北京大学微处理器研究开发中心
Cache性能
CPU time = (CPU execution clock cycles + Memory stall clock cycles) × clock cycle time Memory stall clock cycles = (Reads × Read miss rate × Read miss penalty + Writes × Write miss rate × Write miss penalty) Memory stall clock cycles = Memory accesses × Miss rate × Miss penalty
北京大学计算机科学技术系 北京大学微处理器研究开发中心
Cache 性能(续)
CPUtime = Instruction Count × (CPIexecution + Mem accesses per instruction × Miss rate × Miss penalty) × Clock cycle time Misses per instruction = Memory accesses per instruction × Miss rate CPUtime = IC × (CPIexecution + Misses per instruction × Miss penalty) × Clock cycle time Memory stall cycles per instruction = Misses per instruction × (Total miss latency – Overlapped miss latency)
Average Memory access time = Hit time + Miss rate × Miss penalty
北京大学计算机科学技术系 北京大学微处理器研究开发中心
2
改进Cache性能
Average Memory access time = Hit time + Miss rate × Miss penalty
降低失效
invention
北京大学计算机科学技术系
如何能减少失效
<3 Cs: Compulsory, Capacity, Conflict <在所有情况,假设总的cache大小不变: <在下列情况,会发生什么变化: 1) 改变块大小: 3Cs中哪些失效会受到明显影响 2) 改变相联度: 3Cs中哪些失效会受到明显影响 3) 改变编译器: 3Cs中哪些失效会受到明显影响
北京大学计算机科学技术系 北京大学微处理器研究开发中心
2-way 4-way 8-way
Conflict
Capacity
Cache Size (KB)
Compulsory
北京大学微处理器研究开发中心
1. 通过增大块大小来减少失效
25% 20% Miss Rate 15% 10% 64K 5% 0% 16 32 64 128 256 256K 1K 4K 16K
2 通过增大Cache容量减少失效
<减小容量失效
北京大学计算机科学技术系 北京大学微处理器研究开发中心 北京大学计算机科学技术系 北京大学微处理器研究开发中心