Abstract
This paper proposes a framework called SnuRHAC, which provides an illusion of a single GPU for the multiple GPUs in a cluster. Under SnuRHAC, a CUDA program designed to use a single GPU can utilize multiple GPUs in a cluster without any source code modification. SnuRHAC automatically distributes workload to multiple GPUs in a cluster and manages data across the nodes. To manage data efficiently, SnuRHAC extends CUDA Unified Memory and exploits its page fault mechanism. We also propose two prefetching techniques to fully exploit UM and to maximize performance. Static prefetching allows SnuRHAC to prefetch data by statically analyzing CUDA kernels. Dynamic prefetching complements static prefetching. SnuRHAC enforces an application to run on a single GPU if it is not suitable for multiple GPUs. We evaluate the performance of SnuRHAC using 18 benchmark applications from various sources. The evaluation result shows that while SnuRHAC significantly improves ease-of-programming, it shows scalable performance for the cluster environment depending on the application characteristics.
Original language | English |
---|---|
Title of host publication | HPDC 2021 - Proceedings of the 30th International Symposium on High-Performance Parallel and Distributed Computing |
Publisher | Association for Computing Machinery, Inc |
Pages | 107-120 |
Number of pages | 14 |
ISBN (Electronic) | 9781450382175 |
DOIs | |
State | Published - 21 Jun 2021 |
Externally published | Yes |
Event | 30th International Symposium on High-Performance Parallel and Distributed Computing, HPDC 2021 - Virtual, Online, Sweden Duration: 21 Jun 2021 → 25 Jun 2021 |
Publication series
Name | HPDC 2021 - Proceedings of the 30th International Symposium on High-Performance Parallel and Distributed Computing |
---|
Conference
Conference | 30th International Symposium on High-Performance Parallel and Distributed Computing, HPDC 2021 |
---|---|
Country/Territory | Sweden |
City | Virtual, Online |
Period | 21/06/21 → 25/06/21 |
Bibliographical note
Publisher Copyright:© 2020 Owner/Author.
Keywords
- cuda
- device driver
- gpu
- heterogeneous computing
- runtime system
- single device image
- unified memory