A readahead prefetcher for GPU file system layer
Vasilis Dimitsas, Mark Silberstein

TL;DR
This paper introduces a GPU I/O readahead prefetcher and cache mechanism that significantly enhances GPU file system performance for sequential data processing workloads, doubling bandwidth and reducing execution time.
Contribution
It proposes a novel GPU I/O readahead prefetcher and cache replacement strategy, optimizing GPUfs for sequential workloads and addressing key bottlenecks in GPU-accelerated data processing.
Findings
Over 2x higher bandwidth in microbenchmarks
Up to 50% reduction in application execution time
82% increase in I/O bandwidth
Abstract
GPUs are broadly used in I/O-intensive big data applications. Prior works demonstrate the benefits of using GPU-side file system layer, GPUfs, to improve the GPU performance and programmability in such workloads. However, GPUfs fails to provide high performance for a common I/O pattern where a GPU is used to process a whole data set sequentially. In this work, we propose a number of system-level optimizations to improve the performance of GPUfs for such workloads. We perform an in-depth analysis of the interplay between the GPU I/O access pattern, CPU-GPU PCIe transfers and SSD storage, and identify the main bottlenecks. We propose a new GPU I/O readahead prefetcher and a GPU page cache replacement mechanism to resolve them. The GPU I/O readahead prefetcher achieves more than (geometric mean) higher bandwidth in a series of microbenchmarks compared to the original GPUfs.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Data Storage Technologies · Parallel Computing and Optimization Techniques · Distributed and Parallel Computing Systems
