AMD公司的Epyc处理器官方阵容已经正式公布,其将与长久以来统治数据中心领域的英特尔旗下至强处理器家族展开一场捉对厮杀。
Epyc为AMD公司发布的服务器级处理器家族,与专门面向台式机与笔记本平台的Ryzen芯片相对应。全新AMD芯片皆立足AMDx86Zen微架构打造而成的Ryzen与Epyc。
这会是AMD公司扳回一城的转折吗?其又能否帮助AMD打破英特尔公司的垄断地位?关于这些问题,我们将在后文中进行逐一探讨。作为文章的起始,我们首先路过这些疑问,聊聊其技术规格:此次发布的Epyc处理器皆属于14纳米系统芯片(简称SoC)处理器,并由GlobalFoundries负责代工制造。每块芯片当中封装有四块硅晶片,这一点与以往制造成本更为低廉的单一大型晶片有所区别。另外,每块晶片最多可容纳8个计算核心,这意味着单一处理器封装内可最多提供32个计算核心;每个计算核心可运行一或两条物理线程。
各晶片利用AMD公司的InfinityFabric(属于HyperTransport的增强版)进行内部互连。Infinity亦被用于将双插槽EpycCPU对接在一起。每套处理器封装可通过八通道支持最高2TBDDR4内存容量,且拥有条PCIe通道。如果大家将两块Epyc系统芯片接入一套双插槽系统,则其各自可使用64条PCIe通道并通过Infinity协议实现彼此通信。换句话来说,单插槽Epyc可使用条PCIe通道,而双插槽Epyc系统同样只能使用条通道——而非条——这是因为各处理器需要将其中的64条通道用于进行插槽间互连。
顺带一提,AMD公司实际上是将Epyc塑造为一款单插槽芯片,同时在用户需要时提供相对差强人意的双插槽兼容能力。
AMDEpyc芯片当中的四块晶片(其中的循环符号代表着Infinity互连结构)
Epyc处理器家族支持AMD公司的加密内存功能。这项技术具体分为三种模式,其一为透明模式,即对全部指向内存的读取与写入操作利用内存控制器中保有的密钥进行加密与解密。该密钥由BIOS在启动过程当中生成,且在理论上永远不会脱离至控制器之外——其无法被任何软件所读取。这一加密方案以透明化方式作用于操作系统、应用程序、虚拟机管理程序以及虚拟机自身。
第二种模式为SEM(即安全加密内存),其中选定的内存页面会由底层操作系统进行标记以注明为加密或者非加密,而控制器则同样利用仅其掌握并在每次引导时重新生成的密钥执行具体加密操作。只需要对给定页面中物理地址映射的第47位进行设置即可启用加密功能。
这两种模式的设计目标皆在于防止设备接受物理访问时其内存内容遭到嗅探,或者阻止恶意人士重新调整非易失性内存DIMM大小并从中提取敏感信息。总体来讲,这些功能主要是帮助那些态度谨慎的用户预防他人对其设备进行侵入。
而第三种模式则更为疯狂,即SEV(安全加密虚拟化)。此举亦表示出AMD公司勇于提供加密虚拟机并保护其免受虚拟机管理程序、底层操作系统、其它虚拟机以及设备之上任意代码侵扰的技术野心。
每套虚拟机皆如常由虚拟机管理程序分配予一个地址空间ID(简称ASID),而此ID则与控制器内保存的加密密钥密切相关。当为虚拟机分配CPU核心时间时,该控制器即可提取该虚拟机的ASID、查看其私钥,而后借此对全部实时内存访问内容进行加密与解密。另外,虚拟机管理程序也拥有自己的ASID——为0——且其永远无法查看这些密钥。如此一来,恶意人士即使入侵甚至劫持了虚拟机管理程序,也根本无法查看虚拟机中的实际内容乃至任何运行中的软件——这是因为虚拟机管理程序与主机操作系统并不具备密钥,所以全部数据皆会以乱码形式存在。
但这里正是最为奇怪的地方。SEV的设计目标在于服务那些不信任任何托管其虚拟机的安全敏感人士。这项技术会在虚拟机启动时进行验证,并确保其在启动前与启动期间未受到任何篡改,同时加密系统能够正常工作。这一过程涉及AMD公司为各平台打造的一套签名密钥数据库,这一点我们将在后文中进一步作出讲解。
全部加密操作(采用AES-算法)都会在数据离开系统芯片之前即时完成,这会令每次访问的延迟增加约7纳秒。根据我们得到的消息,当启用此项功能时,整体性能会出现约1.5%的下降。这项功能亦适用于多计算核心,甚至能够在特定场景下兼容DMA。这一切皆由一块ARMCortex协处理器与AMD的定制化固件支持并实现,其全部被同时封装在Epyc系统芯片当中——因此保护能否成功,完全取决于内置的代码片段是否切实有效。该协处理器亦提供其它一些服务,具体包括安全引导并在必要时确保仅启动经过加密签名的操作系统。
产品规格
接下来,我们将共同看看Epyc家族内各位成员的官方性能数据。这批信息日前刚刚发布,且AMD公司明显针对英特尔旗下的各款CPU给出了针锋相对的解决方案。
举例来说,根据本周一AMD公司在其德克萨斯州奥斯汀市办公室交付给各分析师与记者的资料,Epyc对应的正是英特尔至强E5-Av4。根据AMD公司进行的一轮SPECint_rate_base整数基准性能测试,我们得到结论称其性能较英特尔同级产品高出47%。
不过这项特定基准测试代表的仅为日常性能,而非峰值处理能力输出。我们通常对于供应商自身发布的基准测试结果并不完全采信,这里提到只是为了帮助大家初步了解AMD各产品在数据中心市场内的定位及其所面对的竞争性产品。相关数字并不代表其真实性能,因为具体性能表现可能与实际或者相关工作负载类型有关——举例来说,跨多计算核心虚拟机的性能表现在很大程度上取决于芯片其它部分的协调能力,而不仅是内部计算核心间的互连机制。
AMD方面并没有给出的具体竞争对手,因此这里我们冒昧地决定将其与至强E5-v4进行比较。
下面来看具体比较方向:核心数量一项显而易见,代表着每款系统芯片上的CPU核心数量;线程代表着其物理线程数量;基本与加速两种模式代表该处理器在正常与峰值情况下的CPU时钟频率;三级缓存代表末级缓存大小;TDP代表最大功耗水平;SPECint为一项基准性能测试,AMD公司利用此项测试证明其处理器与同等级英特尔产品相比具有性能优势;而价格则为建议零售价。这里如果列出了两项TDP数字,则代表着该处理器可以通过配置从两种运行模式选择一种——高功率高性能模式与低功率低性能模式。
AMD公司将其EpycSKU划分为双插槽与单插槽两类——不过除了P编号SKU之外,其它型号皆可同时适应这两种配置。其中部分SKU出现了两次,这是因为其跨越这两种比较类型。因此,AMD公司建议在双插槽系统当中使用以取代售价高达美元以上的英特尔至强E5-v4,而P则专门面向单插槽服务器以对抗双英特尔至强E5-v4配置。没错,AMD公司确实带种,敢于利用单插槽类SKU对阵英特尔的双插槽芯片,并宣称仍然能够在性能比拼中获胜。
这里,我们根据上述数据整理出一些初步的结论。首先,功率表现可能令人感到惊讶。另外,以上至强皆为发布于年的14纳米向外扩展BroadwellE5-26xx系列处理器,而非更为强大的向上扩展E7或者火力全开的BroadwellE5-46xx家族成员。再有需要提醒大家的是,英特尔公司今年还将公布其Skylake至强新方案,意味着目前我们尚不清楚AMD公司的Epyc到底能不能顶得住芯片巨头掀起的这波全新服务器处理器冲击。
就目前来看,AMD公司拿出与其Epyc产品比较的其实是当下市场上正在出售以及使用的大部分现役服务器处理器——即被全球各数据中心所广泛采用的向外扩展型Broadwell产品。最重要的是,这一切最终都将体现在价格之上:AMD惟一的希望在于允许客户以更低价格买到特定至强产品的替代方案。这意味着AMD公司必须高度