Paper The following article is Open access

Integrating GPGPU computations with CPU coroutines in C++

Published under licence by IOP Publishing Ltd
, , Citation Pavel A Lebedev 2016 J. Phys.: Conf. Ser. 681 012048 DOI 10.1088/1742-6596/681/1/012048

1742-6596/681/1/012048

Abstract

We present results on integration of two major GPGPU APIs with reactor-based event processing model in C++ that utilizes coroutines. With current lack of universally usable GPGPU programming interface that gives optimal performance and debates about the style of implementing asynchronous computing in C++, we present a working implementation that allows a uniform and seamless approach to writing C++ code with continuations that allow processing on CPUs or CUDA/OpenCL accelerators. Performance results are provided that show, if corner cases are avoided, this approach has negligible performance cost on latency.

Export citation and abstract BibTeX RIS

Content from this work may be used under the terms of the Creative Commons Attribution 3.0 licence. Any further distribution of this work must maintain attribution to the author(s) and the title of the work, journal citation and DOI.

Please wait… references are loading.
10.1088/1742-6596/681/1/012048