Skip to main content
QUICK REVIEW

[论文解读] Effectively Prefetching Remote Memory with Leap

Hasan Al Maruf, Mosharaf Chowdhury|arXiv (Cornell University)|Nov 22, 2019
Advanced Data Storage Technologies参考文献 63被引用 30
一句话总结

Leap 是一种针对基于 RDMA 的内存拆分系统中远程内存访问的内核级预取解决方案。它采用在线多数决策预取算法和轻量级、隔离的数据路径,将远程页面访问延迟降低高达 104.04 倍(中位数)和 22.62 倍(尾部延迟),相比现有最先进方案,将应用程序性能提升最高达 10.16 倍。

ABSTRACT

Memory disaggregation over RDMA can improve the performance of memory-constrained applications by replacing disk swapping with remote memory accesses. However, state-of-the-art memory disaggregation solutions still use data path components designed for slow disks. As a result, applications experience remote memory access latency significantly higher than that of the underlying low-latency network, which itself is too high for many applications. In this paper, we propose Leap, a prefetching solution for remote memory accesses due to memory disaggregation. At its core, Leap employs an online, majority-based prefetching algorithm, which increases the page cache hit rate. We complement it with a lightweight and efficient data path in the kernel that isolates each application's data path to the disaggregated memory and mitigates latency bottlenecks arising from legacy throughput-optimizing operations. Integration of Leap in the Linux kernel improves the median and tail remote page access latencies of memory-bound applications by up to 104.04x and 22.62x, respectively, over the default data path. This leads to up to 10.16x performance improvements for applications using disaggregated memory in comparison to the state-of-the-art solutions.

研究动机与目标

  • 解决基于 RDMA 的内存拆分系统中远程内存访问延迟过高的问题,该延迟超过底层网络延迟,限制了应用程序性能。
  • 克服现有方案的局限性,即复用为慢速磁盘设计的数据路径组件,导致在低延迟网络上性能不佳。
  • 设计一种预取机制,提高远程内存环境中的页面缓存命中率,减少重复的远程访问。
  • 开发一种轻量级、应用程序隔离的内核数据路径,消除由传统吞吐量优化操作引起的延迟瓶颈。
  • 与现有最先进方法相比,显著提升使用拆分内存的内存密集型应用程序的性能。

提出的方法

  • Leap 采用在线、基于多数决策的预取算法,根据实时观察到的访问模式预测并获取远程内存页。
  • 系统在内核中为每个应用程序的拆分内存数据路径提供隔离,防止干扰并减少共享路径操作带来的延迟。
  • 设计轻量级的内核级数据路径,以最小化开销,并避免由传统吞吐量优化机制引起的性能瓶颈。
  • 预取算法持续且自适应地运行,利用访问频率和局部性模式,优先预取最可能被后续访问的页面。
  • Leap 直接集成到 Linux 内核中,实现无缝部署和细粒度系统交互,无需修改应用程序。
  • 预取逻辑与数据路径协同设计,确保预取不会增加内存访问关键路径中的竞争或延迟。

实验结果

研究问题

  • RQ1在基于 RDMA 的内存拆分系统中,在线多数决策预取能在多大程度上降低远程内存访问延迟?
  • RQ2在内核中隔离应用程序数据路径对远程内存访问延迟和性能隔离有何影响?
  • RQ3在远程内存系统中,用轻量级、低延迟数据路径替代传统磁盘优化数据路径,能实现多大性能提升?
  • RQ4Leap 在中位数和尾部延迟降低方面与现有最先进内存拆分解决方案相比如何?
  • RQ5与现有方案相比,Leap 为内存密集型应用程序带来的端到端性能提升是多少?

主要发现

  • 与内存拆分系统中默认的内核数据路径相比,Leap 将远程页面访问的中位数延迟降低高达 104.04 倍。
  • Leap 将远程页面访问的尾部延迟(第 99 百分位数)降低高达 22.62 倍,显著提升了对延迟敏感工作负载的响应能力。
  • 使用 Leap 的应用程序性能相比现有最先进内存拆分解决方案最高提升 10.16 倍。
  • Leap 集成到 Linux 内核中,成功缓解了数据路径中由传统吞吐量优化操作引起的延迟瓶颈。
  • 在线多数决策预取算法有效提高了页面缓存命中率,减少了冗余的远程内存访问。
  • 隔离的数据路径设计确保了应用程序特定的内存访问模式互不干扰,提升了可预测性和性能。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。