在通用云服务器中,内存通常占到整机物料成本的四成以上,但平均利用率长期徘徊在五成左右。虚拟机规格按固定配比售卖,用户为峰值预留容量,空闲部分既不能跨机调度,也难以拆分复用,由此产生大量碎片化内存。当AI推理、内存数据库等负载进一步推高内存需求时,这一矛盾更加突出。
内存为何成为成本痛点
云厂商的常规做法是提高超分比例,但内存超分依赖换页与压缩,一旦命中率下降,尾延迟会显著恶化。另一条路是加装内存扩展卡,把容量堆到单机极限,却依旧无法解决跨主机调配的问题。行业需要一个能把内存从单机中解耦出来的标准接口,CXL正是为此而生。
CXL让内存变成可池化资源
CXL复用PCIe的物理层与连接器,在缓存一致性的前提下访问远端内存。CXL 2.0引入交换机,支持内存池化与多主机共享;CXL 3.0进一步扩展组网能力与共享语义。2024年以来,英特尔至强6与AMD EPYC 9005等平台原生支持CXL 2.0,三星、SK海力士、美光相继推出CXL内存扩展模块,产业链的关键拼图基本齐备。其能力可分为三层:
- 内存扩展:为单机增加容量与带宽,不改变单主机拓扑。
- 内存池化:多台主机共享一个内存池,按需动态分配容量。
- 内存共享:多个计算节点一致地访问同一份数据,减少副本。
软件栈是真正的门槛
硬件就绪只是起点。Linux内核近年持续完善CXL子系统,新增了内存分层、NUMA节点感知与页面迁移策略,数据中心普遍采用两级结构:本地DDR作为热层,远端CXL内存池作为冷层,由内核在后台按访问热度迁移页面。微软研究院的Pond项目则验证了另一种思路,将池化内存直接以虚拟机内存的形式对外提供,借助预取与预迁移,让租户获得接近本地内存的体验。
落地仍有三道坎
- 延迟与带宽:PCIe往返延迟高于本地DRAM,对时延敏感型业务需要精细的放置策略。
- 隔离与故障域:池化设备被多租户共享,必须解决带宽配额、侧信道与单点故障问题。
- 计费与运维:内存从整机配件变成独立资源,计费模型、容量规划与SLA口径都要重写。
值得注意的是,内存解耦也在改变云的售卖方式。过去用户购买的是打包好的整机规格,未来可能像订购对象存储一样按实际用量结算,峰值与均值之间的浪费由基础设施层消化。这对内存密集型业务尤为友好,也让内存超分从被动补救转为主动设计。
结语
内存池化不会一蹴而就,它更像存储领域的软件定义存储:先解决容量弹性,再逐步优化性能与隔离。随着CXL 3.0交换机与更多国产内存扩展模块进入市场,内存有望成为继CPU与存储之后,云计算中第三个真正可解耦、可池化、可计量的基础资源。