HotNets 2023 Paper CXL论文阅读笔记整理
问题
Compute Express Link(CXL)是PCIe的替代品。通过比PCIe低得多的延迟和对缓存一致性的硬件支持,程序可以通过CXL高效地访问远程内存。这些功能开启了在数据中心和云网络中使用CXL内存池的可能性,该内存池由多台机器共享的大型内存池组成。最近的研究表明,内存池可以减少内存需求和数据中心成本,但本文认为有三个问题阻碍了CXL内存池的实用性或前景。
本文方法
在本文中,我们认为有三个问题阻碍了CXL内存池的实用性或前景:成本、复杂性和实用性。
-
CXL池的成本将超过减少RAM所节省的成本。使用CXL池有大量的基础设施成本。CXL需要一个与以太网完全并行的网络基础架构,由机架顶部(或N服务器顶部)的CXL设备组成,并可直接、替代地布线到其所有服务器。
-
CXL的延迟远远高于主内存,要获得良好的性能,需要重写软件以显式管理CXL内存,将块复制到本地DRAM中。这种明确的、有条件的和普遍的内存管理增加了软件的复杂性。
-
CXL内存池化的动机是针对被搁置的内存,即由于没有更多的计算资源来支持虚拟机而无法分配给虚拟机的内存,现在可以被其他服务器集中使用。通过分析Google和Azure Cloud的两个生产轨迹,本文发现现代服务器相对于大多数虚拟机来说都很大,几乎没有内存搁浅,从而破坏池化背后的主要动机。
总结
针对在数据中心或云中利用CXL扩展内存池的可行性,本文分析结果是目前不可行,使用CXL内存池面临三个问题:成本、复杂性和实用性。(1)CXL池的成本将超过减少RAM所节省的成本。因为使用CXL池有大量的基础设施成本,如与以太网完全并行的网络基础架构。(2)CXL的延迟远远高于主内存,要获得良好的性能,需要重写软件以显式管理CXL内存,将块复制到本地DRAM中,增加了软件的复杂性。(3)CXL内存池化的动机是针对被搁置的内存,即由于没有更多的计算资源来支持虚拟机而无法分配给虚拟机的内存,现在可以被其他服务器集中使用。但现代服务器相对于大多数虚拟机来说都很大,几乎没有内存搁浅。