Investigation of Parallel Data Processing Using Hybrid High Performance CPU + GPU Systems and CUDA Streams

Authors

  • Paweł Czarnul Faculty of Electronics, Telecommunications and Informatics Gdansk University of Technology, 80-233 Gdansk, Poland

DOI:

https://doi.org/10.31577/cai_2020_3_510

Keywords:

GPGPU, overlapping computations and communication, MPS, Unified Memory, performance, power consumption

Abstract

The paper investigates parallel data processing in a hybrid CPU+GPU(s) system using multiple CUDA streams for overlapping communication and computations. This is crucial for efficient processing of data, in particular incoming data stream processing that would naturally be forwarded using multiple CUDA streams to GPUs. Performance is evaluated for various compute time to host-device communication time ratios, numbers of CUDA streams, for various numbers of threads managing computations on GPUs. Tests also reveal benefits of using CUDA MPS for overlapping communication and computations when using multiple processes. Furthermore, using standard memory allocation on a GPU and Unified Memory versions are compared, the latter including programmer added prefetching. Performance of a hybrid CPU+GPU version as well as scaling across multiple GPUs are demonstrated showing good speed-ups of the approach. Finally, the performance per power consumption of selected configurations are presented for various numbers of streams and various relative performances of GPUs and CPUs.

Downloads

Download data is not yet available.

Downloads

Published

2020-12-16

How to Cite

Czarnul, P. (2020). Investigation of Parallel Data Processing Using Hybrid High Performance CPU + GPU Systems and CUDA Streams. Computing and Informatics, 39(3), 510–536. https://doi.org/10.31577/cai_2020_3_510