@inproceedings{d91181e97b6e4c98b41db681622314e1,
title = "HiWayLib: A Software Framework for Enabling High Performance Communications for Heterogeneous Pipeline Computations",
abstract = "Pipeline is a parallel computing model underpinning a class of important applications running on CPU-GPU heterogeneous systems. A critical aspect for the efficiency of such applications is the support of communications among pipeline stages that may reside on CPU and different parts of a GPU. Existing libraries of concurrent data structures do not meet the needs, due to the massive parallelism on GPU and the complexities in CPU-GPU memory and connections. This work gives an in-depth study on the communication problem. It identifies three key issues, namely, slow and errorprone detection of the end of pipeline processing, intensive queue contentions on GPU, and cumbersome inter-device data movements. This work offers solutions to each of the issues, and integrates all together to form a unified library named HiWayLib. Experiments show that HiWayLib significantly boosts the efficiency of pipeline communications in CPU-GPU heterogeneous applications. For real-world applications, HiWayLib produces 1.22-2.13× speedups over the state-of-art implementations with little extra programming effort required.",
keywords = "CPU-GPU system, contention relief, end detection, lazy copy, pipeline communication",
author = "Zhen Zheng and Chanyoung Oh and Jidong Zhai and Xipeng Shen and Youngmin Yi and Wenguang Chen",
note = "Publisher Copyright: {\textcopyright} 2019 Association for Computing Machinery.; 24th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2019 ; Conference date: 13-04-2019 Through 17-04-2019",
year = "2019",
month = apr,
day = "4",
doi = "10.1145/3297858.3304032",
language = "English",
series = "International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS",
publisher = "Association for Computing Machinery",
pages = "153--166",
booktitle = "ASPLOS 2019 - 24th International Conference on Architectural Support for Programming Languages and Operating Systems",
}