从L2逐出L1高速缓存Cache驱逐(Cache eviction from L1 cache on

2019-08-16 18:31发布

我对政策之后的存储系统的一个基本问题。

考虑与私人L1和L2缓存核心。 L2缓存后,我们对其中的连贯性业务运行的公交车。 现在,如果对地址(X)的高速缓存线被从L2高速缓存逐出,是有必要逐出从L1高速缓存该地址?

之所以驱逐可以是它有助于保持一致性协议的不变[如果L2线显示无效的这个核心不包含此地址。

Answer 1:

有三种不同的设计,并且全部使用。

  1. 独家:L1缓存的数据是从未在二级缓存。 在L2缓存中的数据是从来没有在L1缓存。

  2. 包括:在L1高速缓存中的数据也必须在L2高速缓存。

  3. 既不:在L1高速缓存的数据可以是或可以不是在L2高速缓存。

每一个都有优点和缺点。 包容方案允许高速缓存一致性协议忽略L1高速缓存 - 如果数据不在L2高速缓存,它不是在L1高速缓存。 但独家方案使得最有效地利用宝贵的高速缓存存储器。

因为更快的核间同步正变得比其略大有效的缓存大小更重要的包容性的设计正在变得越来越受欢迎。



文章来源: Cache eviction from L1 cache on L2 eviction