较大的高速缓存通常具有较长的位线或字线,因此很可能具有较高的访问延迟和周期时间。
那么,L2缓存和L1缓存在同一个域中工作吗?L3缓存(存储片)如何,因为它们现在是非包含性的,并在所有内核之间共享?
相关问题是:核心中的所有功能单元是否都在同一时钟域中?非核心部分是否都在同一时钟域中?多核系统中的核心是同步的吗?
我相信跨时钟域会引入额外的延迟。CPU芯片中的大部分部件是否工作在同一时钟域?
发布于 2019-02-21 07:23:31
更大的缓存可能具有更高的访问时间,但它仍然可以通过完全流水线来支持每个端口每个周期一次访问。但它也可能会限制最大支持频率。
在现代英特尔处理器中,L1i/L1d和L2缓存以及内核的所有功能单元都在同一频域中。在客户端处理器上,同一插槽的所有内核也在相同的频域中,因为它们共享相同的频率调节器。在服务器处理器上(我想从Haswell开始),每个核心都在单独的频域中。
在现代英特尔处理器中(我想是从Nehalem开始),非核心(包括L3)在一个单独的频域中。一种有趣的情况是在双NUMA节点配置中使用套接字。在这种情况下,我认为每个NUMA节点的非核心分区仍然存在于相同的频域中。
有一种特殊的电路用于跨频域,其中所有跨域通信都必须通过它。所以,是的,我认为它会带来很小的性能开销。
还有其他的频域。具体地,每个DRAM通道在频域中操作。我不知道目前的处理器是否支持使用不同的通道在不同的频率下运行。
https://stackoverflow.com/questions/54796419
复制相似问题