悉尼歌剧院――虚拟化及机房空空间管理
无论是在文化还是建筑方面看,悉尼歌剧院都是澳大利亚的图标。由丹麦建筑师所设计的悉尼歌剧院是世界著名的旅游景点,每年吸引着大量的游客。
20年来,作为悉尼歌剧院技术合作伙伴,惠普公司一直在帮助歌剧院获得出色的性能。当剧院的票务系统在处理大型销售活动时变得不可靠时,惠普采用HPBladeSystem帮助悉尼歌剧院建立了一个先进的IT设施。
2000年,悉尼歌剧院发布了其第一个网站,并开始进行网上售票。它将网站托管外包给第三方供应商了一段时间。随着越来越多的顾客开始网上买票,网站的服务和可靠性开始显露不足。
“该网站将完全瘫痪,或者客户需要忍受非常缓慢的反应时间。”悉尼歌剧院信患系统总监ClaireSwaffield说。“我们不仅在失去可信度,而且对于那些人们希望在线购票的大型活动来说,人们希望能在开始售票的前15分钟买到最好的门票。但是,我们无法提供这样的服务。因此,我们业务遭受到损失。”
悉尼歌剧院决定推出一个新网站,采用Tessitura软件处理票务和客户关系管理,同时采用新的惠普公司的硬件,为了支持新的票务系统,悉尼歌剧院购买了一台HP BladeSystem c7000机箱,以及10台HPProLiant BL460c刀片服务器,其中9台投入使用,另外一台作为备用。外型“小巧”的HP BladeSystem让悉尼歌剧院可以使其数据中心占用的空间最小化,留下更多空间用于表演和公共空间。
“对于悉尼歌剧院的环境而言,HP BladeSystem堪称完美。”Swaffield说,“我们的数据中心空间相当有限,而且我们非常在意对电力和散热的需求。HPBladeSystem在一个非常小的“盒子”里提供了大量的电源和可扩展性,我们已经看到在营运成本方面有着显著的减少。”
使用HP Onboard Administrator and HP IntegratedLights-Out 2 (iLO 2)等工具,IT人员可以从任何地点通过互联网接入,对系统进行远程管理。HPStorageWorks 6000企业虚拟阵列(EVA)提供了集中式的存储,惠普StorageWorks MSL6000磁带库和HP数据保护软件能够进行安全,集中的数据备份。
Sydneyoperahousecom现在可以承受以往20倍的访问量,同时,Tessitura软件提供了增强的能力,不仅可以跟踪客户活动,并且可以吸引赞助商对未来的演出活动的关注。
“与过去相比,我们已经可以为客户提供更多的个性化服务,”Swaffield说。”现在,我们可以为客户定制其感兴趣的相关信息。我们和客户间的互动方式完全改变了。由于Tessitura是一个与我们的网站完全集成的解决方案,它使我们的客户数据库在2年多的时间里扩大了三倍。每当有重要表演在悉尼歌剧院演出时,我们通过客户数据库进行市场推广,都会产生巨大的影响。”
在2006年到2008年间担任悉尼歌剧院市场营销和拓展总监的Naomi Grabe,非常同意上述说法。“和惠普这样的技术合作伙伴合作,我们的营销功能变得容易。我们现有的技术基础设施使得我们能够与我们的客户建立持续的关系,”采用HP BladeSystem后,门票的网上销售比例高达62%。
由于HP BladeSystem所提供的能力和可扩展性,悉尼歌剧院决定通过采用VMware ESX Server 35虚拟化软件使其对硬件投入回报最大化。
“BladeSystem和虚拟化方式的结合,带给我们部署新系统时速度的提高,”Swaffield说。“在采用虚拟化环境前,需要两天或两天以上的时间部署新服务器。现在,我们可以在两个小时内部署一台机器。速度提高80%以上,,到目前为止,悉尼歌剧院已经有了虚拟化的域控制器,打印服务器和黑莓企业服务器,并且将目标定为对所有机器进行虚拟化。
由于与惠普公司创造性的伙伴关系,使得悉尼歌剧院对于未来的增长和销售活动充满信心。它将能够提供新的服务,例如允许顾客从通过歌剧院网站选择自己的座位等。
“惠普公司在悉尼的团队真正关心悉尼歌剧院,”Swaffield说:“他们总是提前考虑以求真正理解我们的战略方向,然后帮助我们用技术实现这些业务需求。”
硬石公园――电源及散热虚拟化
位于美国南卡罗莱纳州的硬石公园于2008年6月开业。该公园耗资近5亿美元,是美国近年来最野心勃勃的娱乐公园项目。
硬石公园美国IT高级总监大卫,蒙托亚在为硬石公园选择基础硬件,即服务器、备份存储,PC机及POS系统,他需要一个有实力的技术合作伙伴。“根据我过去的经验,我很愿意和惠普公司合作。”他说,“我一直喜欢HP的平台。”通过技术顾问公司――BayshoreTechnologles的帮助,硬石公园和HP达成了合作协议,“Basyshore公司向我们展示了惠普性能和成本方面具有最佳价值。”蒙托亚说。“我也知道,Bayshore公司与惠普公司有着长期的合作关系,因此我们能获得的支持就会将是首屈一指的。”
通过在其数据中心内采用HP BladeSystem和VMware的虚拟软件,硬石公园能够降服务器的数量。通过对除了电子邮件外的所有业务应用虚拟化,蒙托亚能够把整个服务器基础设施集中到2个服务器机架内,这样就节省了空间,使得对功耗和散热的要求最小化。
Bayshore建议采用两台HP BladeSystem c7000进行完全容错,每台c7000配备基于双核英特尔至强处理器的HP ProLiant BL460c刀片服务器,两台HP ProLiantDL380服务器运行公园的Microsoft Dynamics SL财务应用。一台HP StorageWorks MSL4048磁带库用于备份,
HP BladeSystem的精心设计带给硬石公园性能,可扩展性和模块化。VMware公司是解决办法的重要组成部分之一,如果没有虚拟化,硬石公园将需要40台物理服务器。但当采用VMware后,他们在每台刀片上运行约8台虚拟服务器,并且还有足够的空间增加更多。
现在,蒙托亚可以在晚上睡个好觉了。因为他知道,如果服务器出现什么故障,IT人员可以通过远程访问服务器,解决疑难问题,并在必要时重新启动,惠普的远程管理工具――HP Integrated Lights-Out 2(iL02)and Onboard Administrator在很多情况下帮助了IT工程师们,减少了在服务器机房间的走动,
采用HP BladeSystem,因为惠普独有的虚拟连接技术,综合布线的费用和对端口的要求也降低百分之五十。所有这些都会导致较少的人力,更低的成本。且释放出端口作其他用途。蒙托亚说,惠普的硬件已达到对高可用性的需求。“采用HP服务器,我们还没有任何无计划停机。”蒙托亚说。“如果我们需要为一台刀片增加内存或硬盘驱动器片,我们可以只使用VMotion把虚拟服务器从该刀片转移到另一台上,无需停机。”
HP ProLiant460c刀片服务器采用了英特尔至强5400系列处理器。该处理器与前代双核和单核处理器相比,性能提升分别达2倍和5倍:与前代四核产品相比,性能提升20%,性能功耗比提升28%。
此外,5400系列所提供特色还包括:英特尔虚拟化技术(英特尔VT)支持在当今虚拟环境下运行多种 *** 作系统和软件,英特尔与虚拟化软件提供商共同开发,提供比非硬件辅助虚拟环境更出色的功能和兼容性;出色的灵活性,支持64位和32位应用及 *** 作系统全缓冲DOMM 技术与以前的内存技术相比,高达21GB/秒的内存带宽实现了三倍提升,内存容量实现四倍提高,高达64GB,增强的可靠性、可用性和可维护性;英特尔I/O加速技术(英特尔I/OAT)更高效地移动网络数据,实现快速,可扩充的可靠网络,能够显著降低CPU开销,释放更多资源用于处理关键任务增强的可靠性和可管理性众多内存控制器的特性与PCI Express RAS特性相结合,可带来比前代平台显著改进的可靠性,以及其他全新特性,包括纠错码(ECC)系统总线,全新内存镜像和I/O热插拔等。综合布线方案设计模版
XXX企业是一家从事IT技术的高新技术企业,对于网络建设有较高的要求,而综合布线系统作为网络运行的基础和高速数据传输的保障,在建设初始就应当受到高度的重视。
结构化综合布线系统(Structured Cabling Systems,缩写SCS)采用模块化设计和分层星型拓扑结构。它能适应任何大楼或建筑物的布线系统。其代表产品是建筑与建筑群综合布线系统(PDS)。PDS一般采用模块化设计和物理分层星型拓扑结构,传输语音、数据、图像以及各控制信号。
综合布线系统是一个组合压接方式、模块化结构、星型布线并且具有开放特征的布线系统。它包括工作区子系统、水平子系统、管理子系统、垂直子系统、建筑群子系统、设备间子系统,如下图所示:
1 综合布线系统设计原则
11 综合布线设计的标准
综合布线系统标准是一个开放型的系统标准,它能广泛应用。因此,按照综合布线系统进行布线,会为用户今后的应用提供方便,也保护了用户的投资,使用户投入较少的费用,便能向高一级的应用范围转移。
本项目中,综合布线系统的设计满足以下标准:
TIA/ EIA-568A—— 商业大楼电信布线标准(加拿大采用CSA T529)
EIA/ TIA-569——电信通道和空间的商业大楼标准(CSA T530)
EIA/ TIA-570——住宅和N型商业电信布线标准(CSA T525 )
TIA/ EIA-606——商业大楼电信基础设施的管理标准(CSA T528)
TIA/ EIA-607——商业大楼接地/连接要求(CSA T527)
GB/T 50311-2000——《建筑与建筑群综合布线系统工程设计规范》
GB/T 50312-2000——《建筑与建筑群综合布线系统工程验收规范》
CECS72:97——《建筑与建筑群综合布线系统工程设计及验收规范》
12 综合布线设计的要点
综合布线系统的设计方案虽然随着用户的需求和布线的具体环境不同,会有各种变化,但任何综合布线方案在设计时都要满足以下几点要求:
1)实用性:能支持多种数据通信、多媒体技术及信息管理系统等,能够适应现代在和未来技术的发展;
2)灵活性:任意信息点能够连接不同类型的设备,如微机、打印机、终端、服务器、监视器等;
3)开放性:能够支持任何厂家的任意网络产品,支持任意网络结构,如总线形、星形、环型等;
4)模块化:所有的接插件都是积木式的标准件,方便使用、管理和扩充;
5)扩展性:实施后的综合布线系统是可扩充的,以便将来有更大需求时,很容易将设备安装接入;
6)经济性:一次性投资,长期受益,维护费用低,使整体投资达到最少。
2 现场环境及信息点统计
21 用户现场环境
(描述用户需要进行综合布线系统的建筑物环境。)
XXX企业有员工XXX人,计算机、服务器等设备XXX台,具有办公室XX间,分布于……
22信息点分布情况
(描述用户需要布线的信息点分布情况。)
此次综合布线项目规划实施XXX个信息点,这些信息点的分布如下表所示:
楼层 房间号 信息点数量 合计 备注
3 综合布线总体布线及说明
31 综合布线系统总体设计
(描述本项目的总体设计思路,拓扑结构、选择传输介质、涉及哪些子系统等)
根据我们对XXX企业需求的详细分析,我们认为XXX企业的综合布线项目应当采取……
32 综合布线产品选择
(选择什么厂商的产品,简要介绍厂商和产品特性。)
4 综合布线子系统实施设计
(按照各个子系统来进行详细的设计,用语言来描述每个子系统的综合布线实现思路,给出具体的走线图。)
41 工作区子系统设计
42 水平子系统设计
43 管理子系统设计
44 设备间子系统设计
45 设备清单
(描述本项目中使用的综合布线材料清单,可以参照如下的表格进行列举。注意其中不一定包括全部可能使用到的材料。)
序号 材料名称 设备型号 品牌 单位 数量
一、主要材料
A、工作区子系统
1 面板
2 底盒
3 模块
4 RJ-45接头
B、水平区子系统
5 双绞线
6 PVC线槽
C、管理子系统
7 配线架
8 机柜
9 管理环
二、辅助材料
1 线槽附件
2 辅助材料
3 打线钳
4 压线钳
三、其他费用
1 施工费用
2 税金
5综合布线管理
为了XXX企业的综合布线系统日后维护时,查找线缆方便,我们对每一根光缆、双绞线线缆都进行编号。下面把编码规则简要说明以下。
51 综合布线标识的代码定义
(描述本系统中综合布线系统的标识如何定义,标识由哪些部分组成,各部分的含义。)
52 双绞线和信息点的编号规则
(描述本系统中综合布线系统标识的编号规则。)
6 系统测试
施工完成后,我们对整个布线系统要进行测试。
其中,双绞线系统测试内容包括:
• 线路测试: 布线完工后测试。用FLUKE公司的DSP-4000 测试仪(或其他),采用TIA CAT 5 Basic L + ACR方法进行测试。测试仪主机端采用3米的跳线,远端采用05米的跳线。测试项为:线对,阻抗,长度,Propagation Delay, Delay Skew,近端串绕,远端串绕,衰减,近端ACR,远端ACR。
• 联机测试:整个工程完成后,选取若干个工作站,进行实际的联网测试。
• 测试完毕,写出测试报告。
7 工程验收
(1)验收参照规范
工程验收,应参照: GB/T50312-2000
(2)竣工文档
在竣工时,我们将向用户提供如下布线有关文档:
• 《布线系统各层平面图》。可用于查信息点的位置,槽道的路线。
• 《布线系统结构图》。 用于查各级配线架、水平电缆、垂直电缆的连接关系、器件数量、种类等。
• 《房间信息点与双绞线对照表》。用于查询房间信息点对应的双绞线和配线架口。在一个房间里,信息点的顺序为从门的左边绕墙壁一周到门的右边,顺序为1、2、3……。双口墙盒的口顺序为从左到右。
• 《信息点跳线路径表》。记录每次跳线修改活动。
• 《布线系统维护记录》。用来记录所有的维护 *** 作,出现问题时将有助于查对失误的 *** 作,以追踪和修改错误。
看起来似乎有强行把芯片设计和数据中心建设拉到一起尬聊的感觉,但世间也没有那么多的一见如故,一些有意义的讨论未尝不是从尬聊开始的。
就我个人而言,今年已经多次在关于数据中心的文章和(线上)分享中提到AMD:“从1月29日开始到2月6日,腾讯会议每天都在进行资源扩容,日均扩容云主机接近15万台,8天总共扩容超过10万台云主机,共涉及超百万核的计算资源投入,全部由腾讯云自研的服务器星星海提供支撑。”这款服务器基于AMD去年8月发布的代号Rome(罗马)的第二代EPYC处理器,最大的特点就是核多——双路配置再算上超线程,一台采用腾讯云定制版EPYC处理器的星星海服务器可以为云服务器提供多达180个核——也就是说,这100万核服务器资源,“只”需要不到6000台该款自研服务器即可满足。
腾讯云星星海SA2服务器采用2U高度结合类似远程散热片(remote heat-sink)的设计,配合6个60mm风扇,据称可以支持2个300W级别的CPU(AMD第二代EPYC处理器公开版本最高TDP为280W)
实际上,官方名称为AMD EPYC 7002系列的第二代EPYC处理器最多能提供64个核芯、128个线程,腾讯云定制版本选择了48核芯(96线程)而已。至少在CPU的核数(core count)上,AMD给Intel(英特尔,昵称“大英”)造成了很大的压力。上个月英特尔发布了代号为Cooper Lake的第三代至强可扩展处理器(Xeon Scalable Processor,XSP),主打四路和八路市场,四路配置可提供112核芯224线程,核数上堪与双路EPYC 7002系列抗衡,为10nm制程的Ice Lake争取时间。
摩尔定律难以延续的后果就是CPU的功耗持续攀升,第一代至强可扩展处理器(公开版)里TDP最高的205W,到第三代已是寻常,250W算是克制——毕竟要考虑四路的散热需求
话说上一次AMD搞得大英如此狼狈,还要追溯到本世纪初的64位路线之争。众所周知,英特尔是x86及其生态(特别是软件生态)的缔造者,属于“亲妈”级别,AMD充其量是个“后妈”。但是,x86几十年的发展史证明,“亲妈”未必就比“后妈”更了解孩子的发展潜力。也可以前一阵大火的剧集《隐秘的角落》为例,看完就会发现,对于朱朝阳的隐藏能力,后妈的认知似乎先于亲妈。
Cooper Lake:你看我还有机会吗?
简单的说,Intel建立发展x86生态,AMD坚定捍卫x86路线——不断改造作为生态核心的x86处理器,焕颜新生
盛衰无常:架构与制程的双簧
虽然已经在过去十年中逐渐沦为爱好者口中的“牙膏厂”,但在历史上,英特尔一直不乏创新精神。对待x86的态度可以算是这种精神的一个体现,起码在进入64位时代之前,英特尔其实不太瞧得上x86,总觉得这个娃太low——可能是亲妈更了解孕育过程中的种种先天不足吧——几次三番地在重大的转折点,想要“与时俱进”,重起炉灶,带给用户“船新体验”。反而是AMD屡屡在关键时刻出来捍卫x86,通过翻新加盖来维持其生命力。
64位是关键的转折点。上世纪九十年代末,还是32位的x86刚“插足”服务器市场不久,英特尔选择与惠普(HP)联手开发基于IA-64架构的Itanium(安腾)作为接班人,与已经64位了的RISC阵营大佬们对抗。然而,AMD认为x86还可以抢救一下,决定通过64位扩展来“续命”,并在2003年4月发布首款64位x86处理器Opteron,两年后又把x86(-64)带入多核时代。
此时,英特尔已经在IA-64的路上走了十多年。时过境迁,当初设定的目标并没有实现,而x86扩展到64位和多核之后,不仅软件和应用的生态系统得到了完整的继承,性能也完全可以一战。用户用脚投票,大英不得不从。
第二代EPYC处理器发布会上,Google出示2008年7月9日上线的其第100万台服务器的照片,追诉与AMD的革命友情……还是台四路服务器
英特尔痛定思痛,决定用架构和制程构筑双保险,在2007年提出了Tick-Tock(取自于时钟的“嘀-嗒”周期)量产模式,即先通过制程升级将芯片面积缩小,是为Tick;再基于 *** 练纯熟的制程改用新的微架构,是为Tock。当时的英特尔工厂在技术和产能上都占据明显优势,只要架构上回到正轨,左右手组合拳一出,产量受限的AMD哪里支撑得住?在2008年推出Nehalem微架构之后,英特尔终于夺回主动权。
在英特尔施加的强大压力下,AMD在处理器架构上也犯了错误,2011年推出的Bulldozer(推土机)架构采用了即使现在看来也过于激进的模块化设计。随着2012年英特尔开启至强E5时代,AMD在节节失利后不得不退出服务器市场,上一个巅峰期彻底结束。
有道是:福兮祸所依,祸兮福所伏。先贤曾经曰过:纵有架构、制程双保险,奈何CEO是单点。2016年英特尔推出最后一代至强E5/E7(v4),这是英特尔首批采用14nm制程的服务器CPU,同时也宣告了Tick-Tock模式的终结,改用Process–Architecture–Optimization (制程-架构-优化)的三步走模式。
在这个可以简称为PAO的模式里,虽然仍是先制程、后架构的节奏,但新加入的优化不管是针对两者中的哪一个还是兼而有之,都起到了拉长制程换代周期的效果。第三代至强可扩展处理器已经是第四波采用14nm制程的服务器CPU,14nm后面的“+”都数不清楚有几个了——还好预计年底发布的Ice Lake将终止这个“土拨鼠之日”式的制程循环。
架构层面上,从代号Skylake的初代至强可扩展处理器开始,由环形总线改为6×6的2D-mesh,然后持续“优化”。在架构的角度,Mesh和环形总线都属于所谓传统的单片(Monolithic)式架构,优点是整体性好,涉及到I/O的性能比较有保证;缺点是对制程不太友好,随着规模的扩大,譬如核数和Cache的增加,良率上的挑战很大,高端产品的成本下不来,这对于追求高核数的云计算服务提供商显然不是个好消息。
至强E5/E7 v4的四环(2组双向环形总线)与至强SP的6×6 Mesh架构
关键时刻,又是沉寂多年的AMD挺身而出,接盘Tick-Tock,以自己的方式“维护”摩尔定律。
这个方式,就是模块化。
MCM:同构对等模块化的利与弊
先简单回顾一下AMD之前的模块化设计为什么会失败。 Bulldozer架构的模块化设计,建立在AMD对未来应用趋势的不靠谱假设上,即整数(Integer,INT)运算将占据绝对主导地位,结论是增加整数运算单元,减少浮点(Floating Point,FP)运算单元。 于是,Bulldozer架构很“鸡贼”的采用了两个(具有完整整数运算单元的)核芯共用一个浮点运算单元的模块化设计,两个模块就可以提供4个核芯(但只有2个浮点运算单元),6核以此类推。
模块化本身并没有错,Intel Nehalem的模块化设计就很成功。Bulldozer错在“拆东墙补西墙”,结果连补强都算不上
不用放马后炮,这也是一个妄揣用意(用户意志)的行为。即使是在AI大行其道的今天,第二代英特尔至强可扩展处理器已经支持INT8加速推理运算,也不能和通常意义上CPU的整数运算划等号。贸然押宝,错了当然怪不得别人。
不难看出,Bulldozer的模块化,与之前Intel Nehalem架构的模块化设计,只限于架构层面,并不是为制程考虑——CPU不论几个模块多少核,都是作为一个整体(die)来制造的,毕竟十年前制程还没到瓶颈。
然而,到了AMD以代号Naples的(第一代)EPYC处理器重返服务器市场的2017年,摩尔定律放缓的迹象已很明显。同样的14nm(可能还没有英特尔的先进)制程,AMD如何以更低的成本提供更多的核芯?
EPYC系列处理器基于AMD的Zen系列架构,从Zen、Zen+到Zen 2,以及规划中的Zen 3的发展路线,有点像前面提到的Tick-Tock:开发一个良好的基础然后交替演进,不断优化。
与先辈们不同,Zen系列的模块化明显侧重于解决制程面对的挑战,即芯片在物理上被切割为多个die(比较小的芯片更容易制造,良率有保证,有利于降低成本),通过Infinity Fabric(IF)互连为一个整体,所以每个die就是一个模块,但不一定是模块化设计的最小单位。
第一代EPYC处理器的4个die及Infinity Fabric示意
还是从初代EPYC处理器所采用的Zen架构说起。Zen确立了该系列计算单元模块化的最小单位CCX(Core Complex,核芯复合体),每个CCX包括4个Zen核芯(Core),以及8 MiB共享L3 Cache,每核芯2 MiB。
从AMD公开的示意图来看,各片(Slice)L3 Cache之间的连接方式像是full-mesh(全网状,即每两个点之间都有直接连接,无需跳转),CCX内部的跨核芯L3 Cache访问是一致的
Zen的CCD里除了2个CCX,还有2个DDR内存控制器(各对应1个内存通道),用于片上(die之间)互连的Infinity Fabric(IF On-Package,IFOP),而CPU之间互连的Infinity Fabric(IF Inter-Socket,IFIS)与对外的PCIe通道是复用的——这个知识点在后面会用到。
芯片层面的模块是CCD(Core Complex Die),包括2个CCX,共8个Core、4 MiB L2 Cache、16 MiB L3 Cache。官方名称为AMD EPYC 7001系列的第一代EPYC处理器只有CCD这一种(die层面的)模块,所以每个CCD除了2个CCX,还有大量I/O接口器件,包括DDR、Infinity Fabric/PCIe控制器,CCX占CCD面积的比例只比一半略多(56%)。
这个多芯片模块(multi-chip module,MCM)架构的代号为Zeppelin(齐柏林),四个这样的“复合型”CCD构成完整的第一代EPYC处理器,最多能提供32核芯、64 MiB L3 Cache,直接减少CCD的数量就会得到面向PC市场的高端(2×CCD)和主流产品(单CCD)。
按照AMD提供的数据:每个die的面积为213mm²(平方毫米),4个die的MCM封装总面积为852mm²,如果要用大型单一芯片来实现,面积可以缩小到777mm²,大约节省10%,但是制造和测试成本要提高约40%,完全32核的收益下降约17%、成本提高约70%。投入产出比当然非常划算,也变相的说出了大英的苦衷——可是,后者为什么还在坚持单片路线呢?
MCM这种完全对称的模块化方案,如果套用到数据中心领域,相当于一个园区,几栋建筑结构和功能完全一样,都包含了机房、变配电、柴发、冷站、办公和接待区域等。好处当然是彼此之间没有硬性依赖,每栋建筑都可以独立作为数据中心使用,照此复制就可成倍扩大规模;缺点是没有其他类型的建筑,而有些功能还是需要专门的建筑集中和分区管理的,譬如人员办公和统一接待……
如果一个数据中心园区只有黄框里这一种建筑(模块)……实际上,加上左边的66KV变电站,这里也只是整个园区的一角
况且,与绝大多数的数据中心园区不同,CPU对各模块之间的耦合度要求高得多,否则无法作为一个整体来运作,分工合作快速完成数据处理等任务。而这,正是MCM方案的局限性所在。
第一代EPYC的每个CCD都有“自己的”内存和I/O(主要是PCIe)通道,加上CCD之间的互连,每个CCD的外部I/O都很“重度”
多芯片(对称)设计、全“分布式”架构的特点是内存和I/O扩展能力与CCD数量同步,随着核芯数量的增加,内存和I/O的总“容量”(包括带宽)会增加,这当然是优点,但缺点也随之而来:
首先是局部性(locality)会降低I/O的性能,主要是跨CCD的内存访问时延(latency)明显上升。因为每组(2个)CCX都有自己的本地内存,如果要访问其他CCD上连接的内存,要额外花费很多时间,即所谓的NUMA(Non-Uniform Memory Access,非一致性内存访问)。虽然Zen的CCD上有足够多的IFOP,让4个CCD之间能组成全连接(full-mesh),无需经其他CCD跳转(类似于CCX内4个核芯之间的状况),但I/O路径毕竟变长了;如果要访问其他CPU(插槽)连接的内存,还要经过IFIS,时延会进一步上升。
CCD里的两个CCX也通过Infinity Fabric连接,同样会增加跨CCX的Cache访问时延
根据AMD提供的数据,不同内存访问的时延水平大致如下:
随着访问路径变长和复杂,时延以大约一半的比例增加,这个幅度还是很明显的。
同一个CCD里的内存访问没有明显差异,而跨CCD的内存访问,时延增加就很明显了
然后是PCIe,前面已经有图说明,Zen用于CPU之间互连的IFIS与PCIe通道是复用的,即单路(单CPU)的情况下全都用于PCIe通道,共有128个;双路(双CPU)的情况下每个CPU都要拿出一半来作为(两者之间的)IFIS,所以(对外的)PCIe通道数量仍然是128个,没有随着CPU数量的增加而增长。
简单归纳一下,Zen架构的问题是:核数越多,内存访问的一致性越差;CPU数量增加,外部I/O的扩展能力不变——NUMA引发的跨CPU访问时延增长问题还更严重。
单CPU就能提供128个PCIe 30通道原本是第一代EPYC处理器的一大优势,但双CPU仍然是这么多,就略显尴尬了
核数进一步增加的困难很大,不论是增加每个CCD的核数,还是增加CCD的数量,都要面临互连的复杂度问题,也会进一步恶化一致性。
说得更直白一些,就是Zen架构的扩展能力比较有限,难以支持更大的规模。
既然双路配置有利有弊,AMD又是时隔多年重返服务器市场,单路一度被认为是EPYC的突破口,譬如戴尔(Dell)在2018年初推出三款基于第一代EPYC的PowerEdge服务器,其中就有两款是单路。
1U的R6415和2U的R7415都是单路服务器
类似的情况在通常用不到那么多核及I/O扩展能力的PC市场体现得更为明显,在只需要一到两个CCD即可的情况下,消费者更多感受到的是低成本带来的高性价比,所以“AMD Yes!”的鼓噪主要来自个人用户,服务器市场在等待EPYC的进一步成熟。
只有1个die的Ryzen将Zen架构的缺点最小化,获得个人用户的喜爱也就不足为奇了
Chiplet:异构混合模块化的是与非
时隔两年之后,AMD推出基于Zen 2架构的第二代EPYC处理器,通过架构与制程一体优化,达到最高64核、256 MiB L3 Cache,分别是第一代EPYC的2倍和4倍,内存访问一致性和双路的扩展性也有不同程度的改善,终于获得了一众云服务提供商(CSP)的青睐。
Zen 2的整体设计思维是Zen的延续,但做了很多明显的改进,配合制程(部分)升级到7nm,突破了Zen和Zen+在规模扩展上的限制。
首先,Zen2架构延续了Zen/Zen+架构每个CCD有2个CCX、每个CCX有4个核芯共享L3 Cache的布局,但是每个核芯的L3 Cache增大一倍,来到4MiB,每个CCX有16 MiB L3 Cache,是Zen/Zen+架构的两倍。
CCD层面的主要变化是把DDR内存、对外的Infinity Fabric(IFOP/IFIS)和PCIe控制器等I/O器件剥离,以便于升级到7nm制程。AMD表示,第一代EPYC中,上述I/O器件占CCD芯片面积的比例达到44%,从制程提高到7nm中获益很小;而第二代EPYC的7nm CCD中,CPU和L3 Cache这些核心计算、存储器件的占比,高达86%,具有很好的经济性。
被从CCD中拿出来的DDR内存控制器、Infinity Fabric和PCIe控制器等I/O器件,组成了一个单独的I/O芯片,即I/O Die,简称IOD,仍然采用成熟的14nm工艺。
自左至右,分别是传统单片式、第一代EPYC的MCM、第二代EPYC的Chiplet三种架构的示意图
一个IOD居中,最多8个CCD围绕着它,AMD把这种做法称为Chiplet(小芯片)。
如果继续拿数据中心的模块化来强行类比,相当于把整个园区内的变电站、柴发、冷站、办公和接待区域都整合到一个建筑里,位于园区中央,周围是构造完全相同的一座座机房楼……你说,这样一个所有机房楼都离不开的建筑,该有多重要?
仅从布局看,和第二代EPYC处理器有点像的数据中心,但变电站在园区外,制冷也是分布式的(与4个机房模块在一起),中间的建筑并没有上面设想的那么重要
第一代EPYC处理器(Naples)与第二代EPYC处理器(Rome)的片上布局对比,后者是1个IOD + 8个CCD,共9个小芯片组成的混合多die设计
因为CCD的数量增加一倍,所以Rome的核数可以达到Naples的两倍;因为每个CCX/CPU核芯的L3 Cache容量也增加了一倍,所以Rome的L3 Cache总容量可以达到Naples的四倍。
14nm IOD + 7nm CCD的组合——因为不是全部升级到7nm,所以我更愿意称之为制程的“优化”——体现了更高的扩展性和灵活性,使第二代EPYC能够以较低的制造成本提供更丰富的产品组合,提高了市场竞争力。但是,事情并没有看起来这么简单,要了解产品的具体构成和预期的性能表现,您还需要继续往下看。
2019年8月,第二代EPYC正式发布后不久,AMD在Hot Chips大会上介绍了Zen 2产品的Chiplet设计。可能是之前有Zen+架构采用12nm制程的缘故吧,IOD的制程被写成了12nm,其他场合的官方材料都是14nm,所以我们还是以后者为准
今年2月IEEE的ISSCC(International Solid-State Circuits Conference,国际固态电路峰会)2020上,AMD更详细的介绍了Zen 2这一代产品的设计。结合前一幅图可以看到,第二代EPYC的IOD具有834亿晶体管,数量与同样采用14nm制程的英特尔Skylake/Cascade Lake相当——虽然两者的晶体管类型构成有很大差别,但可以作为一个参照,说明这个IOD自身的规模和复杂度。
从红框中的选项来看,EPYC 7302 CPU有4个CCD,每个CCX有2个核芯,可以选择各启用1个
IOD集中所有I/O器件的一个好处是,CPU能提供的内存通道数量与CCD的数量无关。E企实验室前一阵测试了基于第二代EPYC处理器的Dell PowerEdge R7525服务器,送测配置包括2个AMD EPYC 7302处理器,从PowerEdge R7525的BIOS设置中可以看到,这款16核的CPU有4个CCD(而不是8个),应该对应下图中右二的情形:
上方柱状图是AMD列出7+14nm Chiplet方案与假设的单片7nm方案相比,成本优势可以达到一半以上(64核没有假设,可能是指单片式很难制造);下方从左至右依次是8、6、4、2个CCD的布局,原则是尽可能的对称
虽然7302在EPYC 7002系列产品中定位偏低端,只有16个核芯,用4个CCX就能满足,但是它拥有128MiB的L3 Cache,这又需要8个CCX才可以。因此,7302的每个CCX只有2个核芯,享受原本属于4个核芯的16 MiB L3 Cache。
从EPYC 7002系列的配置表中可以看出,7302下面72开头的产品才是真正的低端,譬如同样是16核的7282,不仅L3 Cache容量只有7302的一半(倒是符合每核4 MiB的“标配”),而且仅支持4个内存通道,也是7302等产品的一半——说明其CCD数量是2个,就像前一幅图右下方所示的情况——4个内存通道配置的运行频率也低,只有DDR4-2667,与标准的8通道DDR4-3200相比,理论内存带宽仅为40%多
Dell PowerEdge R7525用户手册里对内存条的安装位置有很详细的说明,毕竟插满8个内存通道和只用4个内存通道,性能差距太大
IOD集中所有I/O对性能也有好处,因为内存控制器集中在一个芯片上,有助于降低内存访问的局部性(NUMA)。不过,AMD在很多场合放出的示意图很有误导性,容易让人以为,对Rome(下图右侧)来说,同一个CPU上的内存访问是不存在NUMA的。
从上面的数据来看,第二代EPYC处理器的“本地”内存访问时延有所增长,毕竟内存控制器和CCX不在一个die上了;收益是跨CPU内存访问的时延有所下降,总体更为平均
好在,稍微详细一点的架构示意图表明,一个EPYC 7002系列CPU内部的内存访问仍然会有“远近”之分:
Dell PowerEdge R7525的BIOS配置中,可以在L3 Cache的NUMA设置为Enabled之后,看到每个CPU内部其实还是可以像EPYC 7001系列一样,分成4个不同的NUMA区域
这时学术性会议的价值就体现出来。AMD在ISSCC 2020上的演讲表明,完整版的Server IOD要承载的功能太多,已经有太多的晶体管,中间都被Infinity Fabric和PCIe相关的I/O所占据,内存控制器只能两两一组布置在IOD的四角,每2个CCD就近共享2个内存控制器。由于中间已经没有走线空间,只能构成一个没有对角线连接的2D-mesh拓扑——仅从拓扑角度而论,还不如EPYC 7001系列4个CCD的full-mesh连接方式。所以,临近的访问有长短边造成的延迟差异,对角线的内存访问因为要走过一长一短两条边,没有捷径可走,自然要更慢一些。
注意放大看IOD布局示意图和右侧1~4的不同等级时延注解,可以理解为每个CPU内部仍然分为4个NUMA区域:本地、短边、长边、(拐个弯才能抵达的)对角线
Hot Chips大会上的这张示意图突出了不同功能的Infinity Fabric导致的IOD中部拥挤,和DDR内存控制器都被挤到边角上的感觉。结合前一张图,不难理解,像EPYC 7282这样只有2个CCD对角线布置的低端SKU,另一条对角线上的4个DDR内存控制器主要起增加内存容量的作用,不如只保留CCD就近的4个内存通道
总之,不管是EPYC 7001系列的MCM,还是EPYC 7002系列的Chiplet,随着芯片数量的增长,性能肯定会受到越来越明显的影响(而不是近乎线性的同步提升),只是好的架构会延缓总体性能增长的衰减速度。
这里我们可以回过头来看看同样基于Zen 2架构的第三代AMD Ryzen处理器,主流PC产品没有那么多核数要求,只用2个CCD即可满足,所以其配套的Client IOD(cIOD)正好是Server IOD的四分之一,从前面图中晶体管数量的对比(209亿 vs 834亿)也可以看出来。
代号“Matisse”的第三代Ryzen,仍然可以看到两个DDR4内存控制器偏居一隅的“遗存”,但对两个CCD已经公平了很多,基本不存在NUMA问题。也就难怪“AMD真香”党在消费类用户中比例要大得多
尽管CCD升级到了7nm,但更多核芯、更大得多的L3 Cache,意味着整体功耗的上升,譬如同样16核的7302和7282,前者Cache大一倍,频率略有提高,默认TDP就来到了155W,Dell为送测的R7525配备了180W的散热器——而EPYC 7282的TDP则“只有”120/150W。当然,CCD应用7nm的效果还是比较明显的,同样16核、L3 Cache只有7302四分之一,运行频率还低500MHz的7301,TDP也有150/170W,基本与7302相当。
为了满足云计算、高性能计算(HPC)和虚拟化等场景的用户需求,AMD又向EPYC 7002系列CPU中增加了大量多核大(L3) Cache以及核数虽少但频率很高的型号(如今年初发布的7Fx2系列),导致全系列产品中TDP在200W以上的SKU占比很高,也给服务器的散热设计带来了更高的挑战。
200W+的CPU将越来越常见
EPYC 7002系列的另一大改进是PCIe从30升级到40,单路仍然是128个通道,但双路可以支持多达160个通道(譬如Dell PowerEdge R7525的特定配置)——在主板支持的情况下。第一代EPYC处理器推出时的一个卖点是,为其设计的主板也可以支持第二代EPYC处理器。没有广而告之的是,要支持PCIe 40,主板需要重新设计。用老主板可以更快的把第二代EPYC处理器推向市场,却不能充分发挥新CPU的全部能力。
不过,PCIe 40本身就是一个很大的话题,留待以后(有机会的话)专文讨论。
外资品牌:西安ABB、上海库柏。
电容器,通常简称其容纳电荷的本领为电容,用字母C表示。定义1:电容器,顾名思义,是‘装电的容器’,是一种容纳电荷的器件。英文名称:capacitor。电容器是电子设备中大量使用的电子元件之一,广泛应用于电路中的隔直通交,耦合,旁路,滤波,调谐回路, 能量转换,控制等方面。定义2:电容器,任何两个彼此绝缘且相隔很近的导体(包括导线)间都构成一个电容器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)