NUMA与英特尔下一代Xeon处理器学习心得(1)

本文介绍了三种主流企业服务器架构:SMP、NUMA和MPP,并重点解析了NUMA架构的特点和优势,包括其如何结合SMP和MPP的优点,以及在最新英特尔Xeon处理器中的应用。

作为一名工程师,一名做技术的工程师,NUMA也是我的近期工作重点之一。在工作时间,在茶余饭后,也看了些NUMA的资料,学习了英特尔下一代Xeon处理器。这里就是我的一点小结,一点心得,和感兴趣的朋友分享分享。

因时间有限,每次就总结一部分,慢慢道来,欲知详情,下回分晓! :-)

 一、概述

从系统架构来说,目前的主流企业服务器基本可以分为三类:SMP (Symmetric Multi Processing,对称多处理架构)NUMA (Non-Uniform Memory Access,非一致存储访问架构),和MPP (Massive Parallel Processing,海量并行处理架构)。三种架构各有特点,本文将重点聊聊NUMA

 

       为了了解NUMA,我这里就介绍一下NUMA与其他两种Non-NUMA的主要区别。

1SMPSymmetric Multi Processing

       SMP是非常常见的一种架构。在SMP模式下,多个处理器均对称的连接在系统内存上,所有处理器都以平等的代价访问系统内存。它的优点是对内存的访问是平等、一致的;缺点是因为大家都是一致的,在传统的 SMP 系统中,所有处理器都共享系统总线,因此当处理器的数目增多时,系统总线的竞争冲突迅速加大,系统总线成为了性能瓶颈,所以目前 SMP 系统的处理器数目一般只有数十个,可扩展性受到很大限制。

 

2MPP (Massive Parallel Processing)

       MPP则是逻辑上将整个系统划分为多个节点,每个节点的处理器只可以访问本身的本地资源,是完全无共享的架构。节点之间的数据交换需要软件实施。它的优点是可扩展性非常好;缺点是彼此数据交换困难,需要控制软件的大量工作来实现通讯以及任务的分配、调度,对于一般的企业应用而言过于复杂,效率不高。

 

3NUMANon-Uniform Memory Access

       NUMA架构则在某种意义上是综合了SMPMPP的特点:逻辑上整个系统也是分为多个节点,每个节点可以访问本地内存资源,也可以访问远程内存资源,但访问本地内存资源远远快于远程内存资源。它的优点是兼顾了SMPMPP的特点, 易于管理,可扩充性好;缺点是访问远程内存资源的所需时间非常的大。

 

       在实际系统中使用比较广的是SMPNUMA架构。像传统的英特尔IA架构就是SMP,而很多大型机采用了NUMA架构。

      

       现在已经进入了多核时代,随着核数的越来越多,对于内存吞吐量和延迟有了更高的要求。正是考虑到这种需求,NUMA架构出现在了最新的英特尔下一代Xeon处理器中。

 

 

(本系列已经告一段落,这里就小结一下,本主题更多内容请见:
http://softwareblogs-zho.intel.com/2009/02/01/numaxeon10/
http://software.intel.com/zh-cn/blogs/2009/01/22/numaxeon9/
http://softwareblogs-zho.intel.com/2009/01/07/numaxeon8/
http://software.intel.com/zh-cn/blogs/2008/12/23/numaxeon7/
http://software.intel.com/zh-cn/blogs/2008/12/22/numaxeon6/
http://softwareblogs-zho.intel.com/2008/12/08/numaxeon5/
http://softwareblogs-zho.intel.com/2008/12/05/numaxeon4/
http://softwareblogs-zho.intel.com/2008/12/03/numaxeon3/
http://softwareblogs-zho.intel.com/2008/11/28/numaxeon2/
http://software.intel.com/zh-cn/blogs/2008/11/24/numaxeon1/
http://software.intel.com/zh-cn/blogs/2008/10/21/numa/
(base) rainroot_ml2@rainrootml2:/home/tdengine$ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 45 bits physical, 48 bits virtual Byte Order: Little Endian CPU(s): 32 On-line CPU(s) list: 0-31 Vendor ID: GenuineIntel Model name: INTEL(R) XEON(R) GOLD 6530 CPU family: 6 Model: 207 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 32 Stepping: 2 BogoMIPS: 4199.99 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx 512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves avx512_bf16 wbnoinvd arat avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid cldemote movdiri movdir64b fsrm md_clear flush_l1d arch_capabilities Virtualization features: Hypervisor vendor: VMware Virtualization type: full Caches (sum of all): L1d: 1.5 MiB (32 instances) L1i: 1 MiB (32 instances) L2: 64 MiB (32 instances) L3: 5 GiB (32 instances) NUMA: NUMA node(s): 1 NUMA node0 CPU(s): 0-31 Vulnerabilities: Gather data sampling: Not affected Itlb multihit: KVM: Mitigation: VMX unsupported L1tf: Not affected Mds: Not affected Meltdown: Not affected Mmio stale data: Unknown: No mitigations Reg file data sampling: Not affected Retbleed: Not affected Spec rstack overflow: Not affected Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Spectre v2: Mitigation; Enhanced / Automatic IBRS; IBPB conditional; RSB filling; PBRSB-eIBRS SW sequence; BHI SW loop, KVM SW loop Srbds: Not affected Tsx async abort: Not affected (base) rainroot_ml2@rainrootml2:/home/tdengine$ 这是什么cpu配置
最新发布
06-19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值