中文

BaM 系统架构中 GPU 发起的按需高吞吐存储访问

分布式、并行与集群计算 2023-02-08 v3 硬件体系结构 操作系统 性能

摘要

图形处理器(GPU)传统上依赖主机 CPU 来发起对数据存储的访问。这种方法非常适合具有已知数据访问模式的 GPU 应用,这些模式允许将其数据集分区并以流水线方式在 GPU 中处理。然而,图与数据分析、推荐系统或图神经网络等新兴应用需要对存储进行细粒度的、依赖数据的访问。由于高昂的 CPU-GPU 同步开销、I/O 流量放大以及较长的 CPU 处理延迟,由 CPU 发起存储访问并不适合这些应用。由 GPU 发起的存储访问将这些开销从存储控制路径中移除,从而有可能以更高的速度支持这些应用。然而,目前缺乏能够实现高效 GPU 发起存储访问的系统架构和软件栈。本研究提出了一种新颖的系统架构 BaM 来填补这一空白。BaM 具有细粒度的软件缓存,用于合并数据存储请求,同时最小化 I/O 流量放大。该软件缓存通过高吞吐量队列与存储系统通信,使得现代 GPU 中大量并发线程能够高速发出 I/O 请求,以充分利用存储设备和系统互连。实验结果表明,对于 BFS 和 CC 图分析基准测试,BaM 提供了 1.0 倍和 1.49 倍的端到端加速,同时与从主机内存访问图数据相比,硬件成本最高降低了 21.7 倍。此外,在同一硬件上,与 CPU 发起的存储访问相比,BaM 将数据分析工作负载的速度提升了 5.3 倍。

关键词

引用

@article{arxiv.2203.04910,
  title  = {GPU-Initiated On-Demand High-Throughput Storage Access in the BaM System Architecture},
  author = {Zaid Qureshi and Vikram Sharma Mailthody and Isaac Gelado and Seung Won Min and Amna Masood and Jeongmin Park and Jinjun Xiong and CJ Newburn and Dmitri Vainbrand and I-Hsin Chung and Michael Garland and William Dally and Wen-mei Hwu},
  journal= {arXiv preprint arXiv:2203.04910},
  year   = {2023}
}

备注

This is an extension to the published conference paper at ASPLOS'23: https://dl.acm.org/doi/abs/10.1145/3575693.3575748