【问题标题】:Which architecture to call Non-uniform memory access (NUMA)?哪种架构可以调用非统一内存访问 (NUMA)?
【发布时间】:2023-04-03 21:33:01
【问题描述】:

根据wiki:非统一内存访问 (NUMA) 是一种用于多处理的计算机内存设计,其中内存访问时间取决于相对于处理器的内存位置。

但不清楚它是关于包括缓存在内的任何内存还是仅关于主内存。

例如 Xeon Phi 处理器有下一个架构:

所有内核对主存 (GDDR) 的内存访问都是相同的。同时,不同的内核对二级缓存的内存访问是不同的,因为首先检查本机二级缓存,然后通过环检查其他内核的二级缓存。 是 NUMA 还是 UMA 架构?

【问题讨论】:

    标签: cpu intel cpu-architecture numa


    【解决方案1】:

    从技术上讲,NUMA 可能仅用于描述对主内存的非均匀访问延迟或带宽。 (如果 NUMA 因子 [延迟远/延迟接近或带宽远/带宽接近] 很小 [例如,与由于 DRAM 行未命中、缓冲等引起的动态可变性相当],那么系统可能仍被视为 UMA。)

    (从技术上讲,Xeon Phi 的 NUMA 系数很小但非零,因为环互连上的每一跳都需要时间[一个内核可能距一个内存控制器仅一跳,而距最远的一个则数跳]。)

    已采用术语 NUCA(非统一缓存访问)来描述对不同缓存块具有不同访问延迟的单个缓存。与核心或核心集群更紧密相关的共享缓存级别也属于 NUCA,但单独的缓存层次结构(我相信)不能证明该术语的合理性(即使窥探可能会在“远程”中找到所需的缓存块缓存)。

    我不知道有任何术语用于描述具有与窥探相关的可变缓存延迟(即具有单独的缓存层次结构)和小/零 NUMA 因子的系统。

    (由于缓存可以透明地复制和迁移缓存块,NUMA的概念就不太合适了。[是的,操作系统可以透明地迁移和复制页面到NUMA系统中的应用软件,所以这个区别不是绝对的。] )

    也许有点有趣的是,Azul Systems 声称其 Vega 系统为 UMA across sockets

    Azul 构建是“UMA”,因为我们的程序没有很好理解的访问模式。相反,模式大多是随机的(在缓存过滤之后),因此具有统一的中等速度而不是 1/16 的内存快和 15/16 的慢是有意义的。

    【讨论】:

      【解决方案2】:

      我肯定会选择 UMA。以你自己的身份查看了NUMA Wiki,UMA 的 Wiki 页面实际上提供了更多细节:

      在 UMA 架构中,每个处理器都可以使用私有缓存。 WIKI

      这就是我选择 UMA 的原因,也是因为,正如您所说,一旦 L2 丢失,它会转到通用内存目录链接并使用内存控制器(图片中的 MC)找到正确的物理页面

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-11-07
        • 2012-11-28
        • 1970-01-01
        • 1970-01-01
        • 2015-02-16
        • 2011-12-08
        • 2014-07-10
        • 2014-03-02
        相关资源
        最近更新 更多