Caching 缓存:块大小和未命中率

Caching 缓存:块大小和未命中率,caching,hardware,Caching,Hardware,给定一个具有单向关联性的集缓存大小,为什么增加块大小会降低未命中率?对于固定的缓存大小,我们存储的数据量是否相同,这意味着我们可以同样准确地获取数据?好问题 在固定缓存大小的情况下,增加块大小将导致存储更少的块,从而保持数据的净大小不变,但存储的数据(在缓存中)在内存中的分布总体上会更小,因为数据总体上属于更少的块。因此,由于空间局部性的原理,我们必须多次进入内存才能获得新的块。(这是因为我们将使用我们已经拥有的内存,而不是使用其他内存。)因此,未命中率降低 但是,未命中处罚将因此而增加。这是因

给定一个具有单向关联性的集缓存大小,为什么增加块大小会降低未命中率?对于固定的缓存大小,我们存储的数据量是否相同,这意味着我们可以同样准确地获取数据?

好问题

在固定缓存大小的情况下,增加块大小将导致存储更少的块,从而保持数据的净大小不变,但存储的数据(在缓存中)在内存中的分布总体上会更小,因为数据总体上属于更少的块。因此,由于空间局部性的原理,我们必须多次进入内存才能获得新的块。(这是因为我们将使用我们已经拥有的内存,而不是使用其他内存。)因此,未命中率降低

但是,未命中处罚将因此而增加。这是因为在发生未命中的情况下,我们需要将更多数据复制到缓存中。(我们必须将一个16 KB的块加载到缓存中,而不是一个4 KB的块