【发布时间】:2018-06-28 20:54:15
【问题描述】:
我们有一个处理器,它的指令在 8 字节操作数上运行,并且它的指令也使用 8 字节编码。我们使用的是 16 KB, 包含 1024 个集合的 4 路集合关联缓存。缓存总共有 4 * 1024 = 4096 个缓存行。这意味着,每个高速缓存行是 16KB=4096 = 4 字节,因此每个操作数和每条指令都需要存储在两个高速缓存行中,每次加载/存储操作和指令提取都需要对高速缓存进行 2 次访问。我们被告知缓存不能应用空间局部性,但为什么呢?在这种情况下,空间局部性意味着什么?
【问题讨论】:
标签: caching memory-management cpu-architecture cpu-cache