AMD Zen微架构

AMD 2016年推出CPU微架构zen,代表者AMD重返高性能运算市场。全新的设计以及新工艺制作(7nm),引入众多新特性,并且产品以SoC或半SoC形态面世。

备注

目前处理器的设计似乎正在向SoC转变,即在处理器中集成了多个处理器核心以及I/O核心,以便提高i/O和内存带宽。不仅AMD基于x86的Zen微架构,Apple基于ARM架构设计的M1处理器,都在处理器中集成了大量的高性能计算、AI或I/O功能。看来,未来处理器的形态演化可能是通用处理器核心功能更适应大量数据吞吐和AI计算,而不仅仅是传统的计算功能。

而且SoC形态的处理器适合笔记本、移动设备以及高密度云计算平台,是未来计算机领域的一次革新。从2021年4月苹果发布会展示了在iMac和iPad Pro上都采用相同的跨平台高度集成的处理器M1,就可以看到未来处理器的发展方向必然是高度集成SoC,实现微型化,高性能低功耗。

Zen微架构处理器以SoC方式集成:

  • 支持常见总线规格(PCIe, SATA, USB) : 这样不再需要辅助IO处理芯片(无需南桥芯片)

  • 缓存:

    • 32KB 一级数据缓存 (L1d) (8路) / 64KB 一级指令缓存 (L1i) (4路)

    • 512KiB 二级缓存(L2) 是每个CPU核心独占

    • 每4个CPU核心共享一个 三级缓存(L3) 组成CCX模块(CPU核心复合体), CCX之间通过Infinity Fabric互联实现缓存一致性

  • 同步多线程(SMT),一个CPU核心可以执行两个线程

  • 每个CPU核心有4个算数逻辑单元(ALU)和两个地址生成单元(AGU)/加载存储单元

  • 每个SMT核心每个时钟周期最多分派6个微操作(集成6个整数操作和4个浮点操作)

  • PTE(分页表)的4K页表支持合并成32K页表

  • 使用待Indirect Target Array的散布型感知器的增强型分支预测,对幽灵漏洞防范能力较佳

  • 高性能硬件随机数生成器

  • 支持AMD-V, IOMMU虚拟化技术

  • 基于HyperTransport扩展的高带宽低延迟Infinity Fabric互联架构,缓解了Zen处理器使用NUMA架构的瓶颈

  • SoC设计,提供传统南桥和北桥芯片功能(包括PCIe, SATA/AHCI, NVMe, USB)

  • 对GCC和LLVM等编译器做了性能优化

  • 采用Socket AM4插座接口(Zen 1~3)

Zen+

Zen+采用了GlobalFoundries的 “12纳米” LP(Leading Performance)工艺制作(实际是该厂14nm LPP工艺改良版),和Zen相比机会没有改动。但是由于制造工艺改进,AMD SenseMI电源管理改善,使得CPU电源管理模块能够更快响应CPU复合需要,并且能够更好维持高时钟频率,所以在高温工作下能够更稳定。此外,降低了缓存、存储访问所需时钟周期,提升了缓存带宽以及更好的 存储兼容。

上述改进使得Zen+比Zen在同样时钟频率下能多处理3%指令,最高频率也提高了6%,最终获得大约10%性能提升。

Zen微架构的芯片实现

Zen微架构有两种实现:

  • 代号”Zeppelin”的八个CPU核心芯片

  • 代号”Raven Ridge”的四个CPU核心+GPU的芯片

“Summit Ridge” / “Whitehaven” 核心

  • 主流性能级平台使用 μPGA封装,Socket AM4插座

  • 仅支持DDR4内存

  • 全系列不锁定倍频设置

  • 4颗x86处理器核心及相应的L2、L3缓存为一个Zen模块,模块之间和内存控制器、PCIe控制器等使用Infinity Fabric总线连接

“Raven Ridge”核心

Zen 微架构的 CPU 核心和新的 GPU 核心, APU 处理器型号以 Ryzen 品牌营销:

  • 改进的4核心8线程的 CPU 部分,每个CPU核心 512 KB 二级缓存(L2),共享 4 MB 三级缓存(L3)

  • 支持双通道 DDR4 内存,支持的内存频率也高达DDR4-2933,如果内存模块有 XMP/AMP 支持,可达到DDR4-3400+

  • GPU部分为 Vega 架构

  • 内置SATA、PCIe(包括NVMe)、USB等外接I/O,可无需外接芯片组作为单片机系统(SoC)使用

APU处理器面对移动笔记本市场

处理器产品

Ryzen系列

Ryzen系列(中文名”锐龙”),面向台式机市场,基准时脉从3 GHz ~ 3.6 GHz不等,均支持双通道DDR4存储器,拥有最多24条PCIe通道。

极致性能级别的产品Ryzen ThreadRipper(线程撕裂者),由Epyc的NUMA结构派生而来,目前最高16核心32线程规格(2×8核心),支持四通道存储器(由两个双通道存储器控制器提供支持)。面向消费级市场推出NUMA结构的电脑系统平台,不过这次AMD将多颗处理器集成到一块处理器基板上,仅需一个处理器插座。

APU产品线

APU(AMD加速处理器)是移动版Ryzen处理器

Epyc系列

Eypc系列是AMD主攻服务器领域处理器,由4颗8核心16线程处理器芯片组成一个处理器,也就是 4x16个CPU核心(或4x16线程),芯片之间采用Infinity Fabric连接。

  • 通常我们服务器都是采用双处理器,所以可以看到CPU超线程有 4x16x2 = 128 个cpu threads

  • 每个处理器支持八通道DDR4内存

EYPC全系列采用多芯片模块设计,将多颗8核心(最多4颗8核心)代号”Zeppelin”芯片(对应Ryzen系列等同”Summit Ridge”)集成在一个处理器基板上。

EYPC最高规格是4颗8核心组成32核心NUMA结构,芯片之间采用高带宽、低延迟的Infinity Fabric互联架构连接。

和Ryzen系列处理器一样,Eypc系列处理器也内置SATA/SATA Express(支持AHCI、NVMe)、USB控制器,主板可以无需搭载南桥芯片。

性能

  • Zen微架构的AMD处理器的多线程比Intel有优势,但是第一代Zen受制于制造工艺,最高频率即效能不如Intel的Skylake/Kaby Lake处理器(Intel采用14nm制程)

  • 由于AMD长期在高性能平台缺席,市场占有率较低,间接导致应用软件对AMD处理器性能优化不好。在服务器领域,Linux内核以及发行版正在逐步对AMD处理器进行优化,所以应该尽量采用最新的内核和发行版本。

  • AMD处理器没有Intel处理器的熔断安全漏洞,并且受到幽灵漏洞影响也较小,所以Intel修正这些漏洞带来的性能损失,使得AMD处理器的竞争力得到提高。

备注

后续我将通过性能测试和分析来验证zen系列处理器和intel处理器以及ARM处理器的优劣

参考