核心观点与关键数据
软件定义内存 (SDM) 组 通过结合软件和新型内存技术,旨在开启新的内存市场,并围绕数据中心中快速增长的数据及其处理需求展开。SDM 的主要动机包括:
- 数据增长与处理挑战: 数据中心中数据及其处理的增长迅速,内存中数据处理需并行和实时处理以获取见解,但现有内存使用效率有待提升。
- 内存需求变化: 用于数据处理的内存被要求更大、更快、更有弹性,物理内存选项激增,推动用例创新。
- SDM 抽象价值: SDM 抽象预计将为内存使用释放新价值,预期应用包括位置透明度、协议抽象、自动分层、统一命名空间、精简配置和精细粒度的 QoS。
行业调查关键发现:
- 内存绑定应用程序: 31% 的缓存计算、28% 的数据库和 43% 的 AI/ML 基础设施应用程序当前内存绑定,对性能要求高。
- 内存扩展需求: 软件管理、服务器本地和池化内存扩展需求显著,未来 2-3 年对服务器互连技术(如 CXL)兴趣浓厚。
- 工作负载问题: 现代应用程序需内存扩展,驱动需求各不相同,需通过行业调查获得性能数据库和用例。
SDM 命名法与架构:
- SDM 定义: SDM 是一种新兴架构范式,通过软件抽象和动态内存分配实现应用程序 SLA。
- SDM 层次结构:
- 一级内存: 操作系统和/或应用程序内存分配首选(如 DRAM、HBM、SCM)。
- 二级内存: 基于 SLA 的应用程序内存分配选项(如 zSwap、CXL 扩展内存)。
- 软件视图: 应用程序通过用户空间和内核空间进行内存分配,支持透明内存用例。
SDM 基准测试:
- 基准目标: 验证 HW/SW 解决方案的新颖性,测量内存延迟、带宽及系统负载变化影响。
- 基准工具:
- 通用基准: Intel MLC、Stream Triad、fio、CacheBench、memtier。
- 数据库基准: RocksDB、SysBench、Cassandra Stress、HammerDB、AIMLPerf。
- 大数据基准: HiBench。
- 行业需求: 需专注于分层内存基准测试,如内核分层、热/冷页面跟踪,现有基准可能需调整以支持 App 托管内存优势。
研究结论与后续步骤
- SDM 应用场景: GPU 训练中,SDM 可通过 DMA 访问 CPU 连接内存或 NVMe 块存储,支持 CXL、NVLink 等互连技术。
- 软件视图 NUMA: 节点间内存访问支持 DAX 访问、远程 NUMA 和设备枚举。
- 后续行动:
- 基准测试: 行业需参与定义关键用例的基准测试。
- 架构定义: 协助确定最终存储定义的内存体系结构和使用案例。
- 团队参与: 加入 OCP SDM 工作组,推动项目进展。
总结
SDM 通过软件抽象和新型内存技术,应对数据中心内存处理挑战,推动分层/混合内存解决方案采用。行业调查显示内存绑定应用程序需求高,SDM 架构分层清晰,基准测试需行业协作优化。未来需聚焦关键用例基准测试,并扩大团队协作以推动 SDM 发展。