@inproceedings{52968b7d20684b68b1ff020c6ca2955e,
title = "GPU-Initiated On-Demand High-Throughput Storage Access in the BaM System Architecture",
abstract = "Graphics Processing Units (GPUs) have traditionally relied on the host CPU to initiate access to the data storage. This approach is well-suited for GPU applications with known data access patterns that enable partitioning of their dataset to be processed in a pipelined fashion in the GPU. However, emerging applications such as graph and data analytics, recommender systems, or graph neural networks, require fine-grained, data-dependent access to storage. CPU initiation of storage access is unsuitable for these applications due to high CPU-GPU synchronization overheads, I/O traffic amplification, and long CPU processing latencies. GPU-initiated storage removes these overheads from the storage control path and, thus, can potentially support these applications at much higher speed. However, there is a lack of systems architecture and software stack that enable efficient GPU-initiated storage access. This work presents a novel system architecture, BaM, that fills this gap. BaM features a fine-grained software cache to coalesce data storage requests while minimizing I/O traffic amplification. This software cache communicates with the storage system via high-throughput queues that enable the massive number of concurrent threads in modern GPUs to make I/O requests at a high rate to fully utilize the storage devices and the system interconnect. Experimental results show that BaM delivers 1.0x and 1.49x end-to-end speed up for BFS and CC graph analytics benchmarks while reducing hardware costs by up to 21.7x over accessing the graph data from the host memory. Furthermore, BaM speeds up data-analytics workloads by 5.3x over CPU-initiated storage access on the same hardware.",
keywords = "GPUDirect, GPUs, Memory capacity, Memory hierarchy, SSDs, Storage systems",
author = "Zaid Qureshi and Mailthody, \{Vikram Sharma\} and Isaac Gelado and Seungwon Min and Amna Masood and Jeongmin Park and Jinjun Xiong and Newburn, \{C. J.\} and Dmitri Vainbrand and Chung, \{I. Hsin\} and Michael Garland and William Dally and Hwu, \{Wen Mei\}",
note = "Publisher Copyright: {\textcopyright} 2023 Owner/Author.; 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2023 ; Conference date: 25-03-2023 Through 29-03-2023",
year = "2023",
month = jan,
day = "30",
doi = "10.1145/3575693.3575748",
language = "English",
series = "International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS",
publisher = "Association for Computing Machinery ",
pages = "325--339",
editor = "Aamodt, \{Tor M.\} and Jerger, \{Natalie Enright\} and Michael Swift",
booktitle = "ASPLOS 2023 - Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems",
address = "United States",
}