日前,Meta 工程团队展示了名为透明内存分流(Transparent Memory Offloading,简称 TMO)的 Linux 内核技术,目前已经在 Facebook/Meta 服务器中投入使用。在 Meta 的数据中心内,这种 TMO 功能在其数百万台服务器中为每台服务器节省了 20~32% 的内存。
对于 TMO 技术,Meta 官方对其的描述为:
- 一种新的 Linux 内核机制,可实时测量由于 CPU、内存和 I/O 资源短缺而导致的工作丢失。在此信息的指导下,在没有任何应用知识的情况下,TMO 会自动调整内存量以卸载到异构设备,例如压缩内存或 SSD。它根据设备的性能特征和应用程序对较慢内存访问的敏感性来执行此操作。 TMO 不仅从应用程序容器而且从提供基础设施级功能的 Sidecar 容器中全面识别卸载机会。
TMO 已经在生产环境中运行了一年多,在我们庞大的数据中心机群中的数百万台服务器上节省了 20% 到 32% 的总内存。我们已经成功地将 TMO 的操作系统组件上传到 Linux 内核中。
Linux 内核方面的工作包括内核中的压力失速信息 (PSI),然后在用户空间中,他们将“Senpai”作为用户空间代理。
分流通常是在 NVMe 固态驱动器上完成的,从每 GB 费用来看它比服务器内存更便宜。即将推出的具有 Compute Express Link (CXL) 的服务器平台在使用透明内存卸载方面也具有很大的潜力。