Logo image
Enabling the Use of C++20 Unseq Execution Policy for OpenCL
Conference paper

Enabling the Use of C++20 Unseq Execution Policy for OpenCL

Po-Yao Chang, Tai-Liang Chen and Jenq-Kuen Lee
ACM International Conference Proceeding Series, 22
04/2021

Abstract

C++ Clang LLVM OpenCL SPIR-V Vectorization Human-Computer Interaction Computer Networks and Communications Computer Vision and Pattern Recognition Software
This work facilitates the usage of unsequenced execution policy as seen in C++20 standard library with the newly introduced OpenCL kernel language, C++ for OpenCL. By passing unseq, a global object of type unsequenced-policy, as an argument to selected C++ parallel algorithms, the function would then be vectorized with the help of clang and LLVM. This work complements the introduction of C++ for OpenCL, which brings the core language part of C++17 to OpenCL while leaving out the standard library part. In the best case, we see a whopping 6.9 time speedup.

Metrics

1 Record Views

Details

Logo image