Title | ||
---|---|---|
Gpu-Chariot: A Programming Framework For Stream Applications Running On Multi-Gpu Systems |
Abstract | ||
---|---|---|
This paper presents a stream programming framework, named GPU-chariot, for accelerating stream applications running on graphics processing units (GPUs). The main contribution of our framework is that it realizes efficient software pipelines on multi-GPU systems by enabling out-of-order execution of CPU functions, kernels, and data transfers. To achieve this out-of-order execution, we apply a runtime scheduler that not only maximizes the utilization of system resources but also encapsulates the number of GPUs available in the system. In addition, we implement a load-balancing capability to flow data efficiently through multiple GPUs. Furthermore, a callback interface enables overlapping execution of functions in third-party libraries. By using kernels with different performance bottlenecks, we show that our out-of-order execution is up to 20% faster than in-order execution. Finally, we conduct several case studies on a 4-GPU system and demonstrate the advantages of GPU-chariot over a manually pipelined code. We conclude that GPU-chariot can be useful when developing stream applications with software pipelines on multiple GPUs and CPUs. |
Year | DOI | Venue |
---|---|---|
2013 | 10.1587/transinf.E96.D.2604 | IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS |
Keywords | Field | DocType |
stream processing, GPGPU, CUDA, task scheduling | Graphics,Pipeline transport,CUDA,Computer science,Parallel computing,Callback,Software,General-purpose computing on graphics processing units,Stream processing,Software framework | Journal |
Volume | Issue | ISSN |
E96D | 12 | 1745-1361 |
Citations | PageRank | References |
3 | 0.41 | 19 |
Authors | ||
3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Fumihiko Ino | 1 | 317 | 38.63 |
Shinta Nakagawa | 2 | 10 | 1.01 |
Kenichi Hagihara | 3 | 528 | 56.94 |