Cache in Hand: Expander-Driven CXL Prefetcher for Next Generation CXL-SSDs——论文泛读

本文介绍了一种名为ExPAND的解决方案,它通过在CXLSSD上卸载LLC预取,利用异构机器学习管理和CXL.mem的反向失效机制,有效降低SSD的长读取延迟,提升图形应用性能。实验结果显示,ExPAND显著提高了性能,优于其他预取策略。
摘要由CSDN通过智能技术生成

HotStorage 2023 Paper CXL论文阅读笔记整理

问题

将计算快速链路(CXL)与SSD集成,可以实现对大内存的可扩展访问,但速度比DRAM慢。例如,PRAM比DRAM[7]慢7倍,新的闪存技术延迟慢30倍[2]。为了解决这一问题,工业概念证明(PoC)采用SSD侧DRAM缓冲区作为内部缓存,这些缓冲区有效地处理了写入延迟问题,但很难掩盖存储类存储器(SCM)后端介质造成的长读取延迟。

与文件系统管理的块设备不同,CXL SSD应在不依赖主机端存储堆栈的情况下提供内存请求(加载/存储)。隐藏长读取延迟需要理解主机应用程序的执行行为,并适当地管理相应的CPU缓存层次结构。但现有的SSD技术忽略了这些方面,它们只处理块请求。

挑战

当CXL SSD作为主机管理的设备内存时,现有的CPU端缓存预取机制仍然是有益的。然而,面临两个挑战:

  • 硬件逻辑大小限制:在处理CXL内存池空间中可能遇到的各种内存访问模式时的硬件逻辑大小限制。

  • 延迟变化:位于CXL交换机网络中不同位置的不同CXL SSD的延迟不同。

本文方法

本文提出了ExPAND,一种扩展器驱动的CXL预取器,它将最后一级缓存(LLC)预取从主机CPU卸载到CXL SSD。

  • 使用用于地址预测的异构机器学习算法管理跨各种扩展器访问的数据预取,利用CXL.mem的反向失效(BI)确保数据一致。

  • 在PCIe枚举和设备发现过程中识别底层CXL网络拓扑和设备延迟,为每个CXL-SSD计算精确的端到端延迟,并写入每个设备的PCIe配置空间。因此,卸载的高速缓存预取算法可以确定向主机LLC进行数据检索的最佳时机,有效地减少了SSD后端介质施加的长延迟。

实验表明,ExPAND将图形应用程序性能提高了3.5倍,超过了具有多种预取策略的CXL-SSD池。

实验

实验环境:使用gem5[34]和SimpleSSD[35]进行模拟

数据集:亚马逊产品联合购买网络[33],测试四种图算法

实验对比:加速比

实验参数:不同图算法、CXL交换机层数

总结

针对CXL-SSD的预取,现有方法面临硬件逻辑大小限制和不同CXL层延迟不同。本文提出ExPAND,一种扩展器驱动的CXL预取器,将预取卸载到CXL SSD。包括两个关键技术:(1)使用用于地址预测的异构机器学习算法管理跨各种扩展器访问的数据预取,利用CXL.mem的反向失效(BI)确保数据一致。(2)在枚举和设备发现过程中识别底层CXL网络拓扑和设备延迟,技术每个CXL-SSD的精确端到端延迟,并写入每个设备的PCIe配置空间。因此,预取算法可以确定获取数据的最佳时机,减少了SSD后端介质施加的长延迟。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妙BOOK言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值