NUMA架构详解

   基本概念

  • 为什么要有多处理器架构?

由于摩尔定律的失效,单个CPU内的晶体管的数量接近于饱和状态,因此单个CPU的性能已经接近饱和状态,这时,要想提高计算机的性能,就必须朝着多核架构发展。多核架构中,常见的有两种架构,SMP架构和AMP架构。

  • SMP(Symmetric Multiprocessing)架构:即多处理器架构,是目前最常见的多处理器计算机架构
  • AMP(Asymmetric Multiprocessing)架构:即非对称多处理器架构,则是与SMP架构相对的概念

SMP架构和AMP架构的主要区别是什么呢?主要有以下几点

  1. SMP架构的多个处理器都是同构的,使用相同架构的CPU;而AMP架构的多个处理器可能是异构的。
  2. SMP架构的多个处理器共享统一内存地址空间;而AMP架构的每个处理器则拥有自己的独立地址空间。
  3. SMP架构的多个处理器通常共享一个操作系统实例;而AMP架构的每个处理器可以有或者没有运行操作系统,每个处理器可以独立运行不同的操作系统。
  4. SMP架构的多个处理器之间可以通过共享内存来协调通信;而AMP则需要提供一种处理器间的通信机制。

在SMP架构中,又可以分为NUMA架构和UMA架构

  • NUMA(non-Uniform Memory Access)非均匀内存访问架构是指多处理器系统中,内存的访问时间是依赖处理器和内存之间相对位置的。在这种设计里面存在和处理器相近的内存,通常称作本地内存;还有和处理器相对远的内存,通常称之为远端内存。
  • UMA(Uniform Memory Access)均匀内存访问架构则是与NUMA架构相反,所以处理器对共享内存的访问距离和时间是相同的。

NUMA架构图结构如下所示:

(免费订阅,永久学习)学习地址: Dpdk/网络协议栈/vpp/OvS/DDos/NFV/虚拟化/高性能专家-学习视频教程-腾讯课堂

更多DPDK相关学习资料有需要的可以自行报名学习,免费订阅,永久学习,或点击这里加qun免费
领取,关注我持续更新哦! !    

  • 每个CPU核独享L1、L2级缓存,L3级缓存为共享缓存
  • 一个SOCKET称之为一个NUMA结点,不同NUMA节点之间通过总线连接
  • 接近NUMA结点的内存成为本地内存,其他NUMA节点的内存称之为远端内存
  • NUMA节点对本地内存的访问更快

NUMA架构图

NUMA结点的内存分配方式

  • Local分配:分配本地内存
  • InterLeaved分配:交错分配内存
  • Blocked分配:如图所示

NUMA结点的内存分配方式

原文链接:NUMA架构详解 - 知乎

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值