服务器市场面临内存挑战之一是成本
内存媒体没有限制CXL,它提供了一个灵活的内存接口,允许设计师灵活选择各种参数特征,如耐用性、延迟和带宽,以便服务器CPU不仅可以使用常用的DDR内存,也可以支持LPDDR5、持久内存等。尽管是一个分布式内存,CXL主要是低延迟,但要说和CPU与寄存器相比,缓存和寄存器的延迟仍有一定差距。
目前,ADSP-21062LKS-160服务器市场面临的内存挑战之一是成本。到目前为止,当我们选择云服务容器时,内存仍然占很大一部分。通常,在内存消耗量翻倍后,价格也会翻倍。这实际上与内存本身的可扩展性有关。目前,在服务器上存储更多内存已成为常态,但实现更大内存总是存在瓶颈。因此,从2013年开始,每一年bit内存价格基本趋于平缓。
但服务器CPU核心数的增加速度并没有减慢,再加上AI随着新工作负载的引入,更大的内存容量和更大的内存带宽已经成为服务器内存面临的痛点。因此,该行业开始考虑从系统层面解决这些问题,例如CPU增加DDR通道,让它支持更大的带宽和容量。
但这导致了一系列新问题,以满足新问题DDR通道,需要更多的引脚,也提高了成本,降低了可靠性,PCB层数也开始增加。这也使得整个服务器主板的尺寸非常大,甚至很难放入1U机柜的标准尺寸。
CXL灵活性和延迟
此时,内存媒体没有限制CXL,它提供了一个灵活的内存接口,允许设计师灵活选择各种参数特征,如耐用性、延迟和带宽,以便服务器CPU不仅可以使用常用的DDR内存,也可以支持LPDDR5、持久内存等。我们之前已经介绍过很多次了。CXL这次,我们来谈谈内存扩展,CXL有什么优势。
例如一个80核CPU,应用要求每个核心配置2GB的DDR5内存,即需要160GB的DDR5内存。如果使用16GBDIMMx8的配置显然不能满足,32GBx8多出了96GB内存,增加了近500美元的成本,使用32美元GBx5这种不跑全通道的配置虽然容量正确,但会降低带宽和性能。
然后我们反观CXL,CXL可以配置原生DDR有8个16个通道GBDIMM在这种情况下,添加32GB的CXL内存,内存不仅满足了内存容量的需求,还增加了额外的带宽,我们已经提到了CXL内存媒体没有限制,可以使用LPDDR5之类的CXL扩大内存,进一步降低成本。
尽管是一个分布式内存,CXL主要是低延迟,但要说和CPU与寄存器相比,缓存和寄存器的延迟仍有一定差距。HotChips上,CXL联盟就给了CXL延迟上的具体数字。CPU外的CXL170-250的内存延迟ns左右,高于独立CPU的NVM,解构内存的网络连接,SSD和HDD等。
虽然在我们看来,这个数字已经很小了,但与原生的主要内存相比,延迟扩大了两倍。Meta和AMD两位专家提出了一个概念,即对内存进行分层,分为关键任务,如实时分析“热”内存,访问不那么频繁“暖”用于巨大数据的内存和“冷”内存。“热”原生内存页面DDR内存里,而“冷”内存页面交给CXL内存。
然而,在目前的软件眼中,他们无法区分什么是“热”内存和“冷”内存,原生内存用完后,开始占用CXL内存,所以原来是“冷”内存的CXL,也开始变成“热”内存。因此,目前最大的挑战是如何在操作系统和软件层面检测到它“冷”内存页面,主动将其转入CXL在内存中,生内存留出空间。Meta和AMD两位专家表示,他们已经在开发相应的软硬件技术。
CXL也许不会成为HPC和AI应用的宠儿
固然CXL它对云服务制造商和许多数据中心都有很好的吸引力,但这种形式的内存可能不适用于HPC应用超算。“富岳之父”松冈聪教授说CXL这种内存解构方案仍然存在许多技术问题,因此无法进入主流HPC甚至是AI充分利用负荷。松冈教授没有给出具体的细节,但他给出了一个例子,那就是很多年前SGI的NUMALINK该系统也采用了分布式内存解构的方法,但我们都知道今天市场上的情况NUMALINK产品已基本消失。
然而,他并没有完全否认内存解构的想法,甚至富岳超算本身也使用了这种技术,因此他将使用这种技术MPI进行put/get在操作过程中,远程内存访问延迟降低到亚微秒但是添加一个单独的UMA历史上证明了这对内存池HPC收效甚微。
首先,这需要更高的硬件交换机成本。此外,在大规模配置规模的系统中,缺乏相应的编程标准。因此,就目前而言HPC对于大型系统,CXL内存可能首先出现在节点的一小部分,例如需要在存储或存储中计算的内存AI负载,而不是推广到整个系统。
写在最后
其实对于CXL没有必要这么担心。对于服务器市场来说,核心数量低CPU还会继续使用原生DDR通道来配置DIMM内存。达到高核数CPU上,然后根据系统成本、容量、功耗、带宽等参数灵活应用CXL内存,而这就是CXL带来最大的优势,灵活性。此外,目前CXL内存还没有大规模量产,自然也没有普及。我们对它的实际性能没有一个大致的了解,也许引入CXL延迟后,性能损失不会那么糟糕。