use*_*289 1 caching processor multiprocessing numa mesi
在NUMA架构(非统一内存访问)中,每个处理器都有自己的第一级缓存,因此存在用于处理器通信的协议(MESI).但为什么不能将每个处理器直接连接到其他缓存?我读到"连接速度不够快",但这并没有解释太多.
谢谢.
小智 5
首先,拥有L1缓存并不意味着NUMA架构,主板拓扑仍然是制造机器UMA或NUMA的主要元素.
其次,使用的Cache Coherence协议取决于体系结构,可能与MESI不同(实际上MESIF更适合NUMA机器).
谈谈你的问题
每个处理器可以连接到彼此的处理器缓存.实际上,每个高速缓存一致性协议都是这样做的,而不是通过允许直接读/写,因为它需要很多努力才能重复使用.
但是,可以将CPU直接连接到另一个CPU缓存,实际上它是以Intel CPU上的方式实现的.
逻辑核心(即超线程核心)可以共享L2缓存,并且同一包中的某些物理核心可以共享L3缓存.
然而,这里有两个重要方面:第一,共享缓存的CPU数量较少,第二,它们位于相同的核心/包中.
直接连接所有缓存将失去CPU 内部(作为一个整体)和CPU 外部之间的界限.
隔离CPU让我们创建了非常可定制的模块化系统,外部协议是一个让我们隐藏实现细节的接口,这比紧密连接的缓存所带来的速度更快.
当我们需要这样的速度时,我们会构建专用的集成系统组件,如协处理器.
缓存没有直接关联的原因有多种,我不能代表行业领导者,但这里有一些通用的想法.
简而言之:可以直接连接缓存,对于分立组件来说这是不值得的.它适用于集成组件.
| 归档时间: |
|
| 查看次数: |
142 次 |
| 最近记录: |