PCI-Express开始迎接带宽挑战:未来几年将与CPU性能提高保持同步!
2019-10-18
PCI总线最早是由英特尔于1992年推出,PCI-X则是IBM,惠普和Compaq于1998年创立的总线标准。PCI和PCI-X都是半双工的,所有的设备都共享一个总线。PCI-SIG组织在2003年推出了PCI-Express,是PCI总线串行话,并采用了结点传输,每个设备可以独立使用总线。
尽管PCI-Express已经取得了成功,但我们被速度相对较慢的PCI-Express 2.0困了3年多。此后,又被PCI-Express 3.0困了7年。当多核处理器正随着内核数量的不断增加而进入高速发展阶段,当以太网网络开始回到摩尔定律的带宽改进的2年周期时,PCI-Express总线陷入了泥潭,没有为正在发展的各种异构计算提供足够的带宽,PCI-Express总线已成为新的瓶颈。
系统内部的总线状况将在2019年变得更好。2017年推出的PCI-Express 4.0总线于当年晚些时候首先出现在IBM基于Power9的Power Systems机器中,现在逐渐进入X86和Arm处理器。通过此更新,悬挂在CPU封装上的PCI-Express控制器的外围设备可以使用16(x16)16Gb/sec通道(在编码之前)提供31.5GB/sec的带宽(在除去纠错编码开销之后)。该x16插槽通常用于驱动高端GPU或FPGA加速器,并且是PCI-Express外设带宽的最高点。无论如何,该PCI-Express 4.0 x16插槽的带宽几乎是十年半以前提供的原始PCI-Express 1.0规范的八倍。
在PCI-Express 5.0规范上,PCI-SIG再次将原始通道速度提高了一倍,达到64Gb/s,这将允许x16链路在双工串行链路上每条路的带宽都略高于126Gb/s。因此,要特别感谢物理学家和化学家,因为他们提出了互连中PHY通信电路中使用的新材料。
像最新一代的以太网交换机ASIC及其基于的标准一样,PCI-Express 6.0标准将转向脉冲幅度调制编码(准确地说是PAM4编码),以将两倍的比特塞入信号中。迄今已使用传统的位编码完成。即将发布的PCI-Express 6.0规范还将在协议中添加一个低延迟前向纠错层,随着带宽的增加和丢包几率的增加,大多数互连都必须添加该层。FEC给所有互连协议增加了一点延迟,目前尚不清楚这将如何影响PCI-Express。PCI-SIG于6月份推出了最初的PCI-Express 6.0规范,而10月份发布了该规范的0.3版本。并准备按计划在2021年某个时候发布给硬件制造商。这可能意味着PCI-Express 6.0设备可能会在2021年下半年到2022年上半年之间投放市场。
凭借众多依赖PCI-Express传输的多芯片架构和异构架构,并在PCI-Express硬件之上分层了其他协议,例如CXL,CAPI,CCIX和Gen-Z,我们认为NVLink有很大的机会甚至OpenCAPI都可以与其中的某些协议(例如CXL)融合,以创建用于在PCI-Express上将计算和加速器彼此链接的单个协议,如我们所见,稳定的带宽增长对系统架构至关重要。
这是一张有趣的图表,PCI-SIG汇总了自1992年以来随时间变化的PCI,PCI-X和PCI-Express总线的历史带宽趋势。与我们上面讨论的数字以及我们将在下面的图表中绘制的数字不同稍后,PCI-SIG图表会在全双工链接(PCI-Express情况下为x16链接)中同时增加双向带宽。。
较浅的线显示了如果每三年像时钟频率一样增加一倍,外围总线上的带宽随时间的变化将是什么。显然,PCI-Express向串行双工通道体系结构的转变大大提高了带宽,超出了预期。重要的是,通过添加点对点链接,并未像PCI和PCI-X那样采用共享总线。而对于PCI和PCI-X总线,在总线上添加第二张卡时,它会占用某些带宽,,将许多卡添加到系统会导致大量开销。因此,在配置密集的系统中,PCI和PCI-X设备的相对性能可能会很低。
36个月的性能加倍节奏非常重要,因为它或多或少是摩尔定律的外部优势为至少某些处理器供应商提供的。英特尔和IBM目前的发展速度为三年,距离英特尔联合创始人戈登·摩尔最初所描述的18个月甚至是他在1980年代提出的修改的时间都相去甚远--他把晶体管成本减半延伸到24个月左右。
好消息是,这种加速的步伐正在加快,CPU的步伐正在放缓,网络的步伐正在加快。因此,有可能使系统中的某些组件恢复平衡,并在未来几年内发展出真正的混合架构,因为它们不需要专有的互连来使组件之间能够快速通信。
图表:
上图显示了自1998年PCI- x协议问世以来,服务器的相对性能,与同期的以太网交换机端口带宽大致相当,也与同期实际的PCI总线带宽带宽相当。
我们根据基于X86服务器芯片的两路服务器得出的相对服务器体积数据是一个非常粗糙的数字,因为市场的其余部分本质上是数据中的噪音,并且它考虑了每核的增加指令(IPC)以及每个插槽的核心数,以得出长期的比较性能。
这三个向量在同一时间上一次出现急剧上升的最后一次是在2010年,此后,PCI-Express和以太网都以各自的PCI-Express 3.0和40Gb/sec的水平喘了口气,并停了一会儿。即使需要18个月,24个月或现在接近36个月的时间才能使晶体管数量增加一倍,并使每个晶体管的成本降低一半,但处理器的年更新速度或多或少仍然受到IPC和工艺调整的影响。对于未来几年以太网将如何从100Gb/sec跃升至200Gb/sec,从400Gb/sec跃升至800Gb/sec的情况,我们可能持乐观态度,但这是主要商用芯片供应商的路线图和他们的转换客户。
看起来PCI-Express永远不会跟上CPU性能提高的步伐,但是至少在未来几年中,它将保持同步。