pra*_*kar 6 caching computer-architecture memory-size
我对内存系统遵循的策略有一个基本的问题.
考虑具有私有L1和L2缓存的核心.在L2缓存之后,我们有一条总线,在该总线上运行一致性流量.现在,如果从L2高速缓存中清除地址(X)的高速缓存行,是否有必要从L1高速缓存中逐出该地址?
驱逐的原因可能是它有助于维持一致性协议的不变性[如果l2中的一行显示无效,则此核心不包含此地址].
Dav*_*rtz 13
有三种不同的设计,都使用了.
独占:L1缓存中的数据永远不会位于L2缓存中.L2缓存中的数据永远不会出现在L1缓存中.
包含:L1缓存中的数据也必须位于L2缓存中.
两者都不是:L1缓存中的数据可能在L2缓存中,也可能不在L2缓存中.
这些中的每一个都有优点和缺点.包含方案允许高速缓存一致性协议忽略L1高速缓存 - 如果数据不在L2高速缓存中,则它不在L1高速缓存中.但独家方案可以最有效地利用珍贵的缓存.
包容性设计正变得越来越流行,因为更快的核间同步变得比具有稍大的有效高速缓存大小更重要.
归档时间:
12 年,10 月 前
查看次数:
2870 次
最近记录: