OpenCL-HPX integration

Thumbnail Image

Date

2021

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Distributed applications combine the computational capabilities of heterogeneous nodes. As such, they offer challenges regarding data transfer and synchronization. HPX is a library for concurrent, parallel applications. It strives not only to address challenges regarding distributed systems, but also to conform to current and upcoming C++ standards. One of the solutions found in heterogeneous systems is provided in form of the OpenCL standard. It enables the cooperation between hardware resources through a unified interface. In this work, we combine HPX and OpenCL in form of an executor. The OpenCL executor enables HPX users to benefit from more resources on heterogeneous nodes. We describe the executor’s design and its implementation. Furthermore, we present the testing methods to ensure the correctness of the executor. Finally, we provide benchmarks on NVIDIA and AMD GPUs.

Description

Keywords

Citation

Endorsement

Review

Supplemented By

Referenced By