Efficient SIMD Vectorization for Hashing in OpenCL

Tobias Behrens, Viktor Rosenfeld, Jonas Traub, Sebastian Bress, Volker Markl
21st International Conference on Extending Database Technology (EDBT), 2018


   title={Efficient SIMD Vectorization for Hashing in OpenCL},

   author={Behrens, Tobias and Rosenfeld, Viktor and Traub, Jonas and Bress, Sebastian and Markl, Volker},



Download Download (PDF)   View View   Source Source   



Hashing is at the core of many efficient database operators such as hash-based joins and aggregations. Vectorization is a technique that uses Single Instruction Multiple Data (SIMD) instructions to process multiple data elements at once. Applying vectorization to hash tables results in promising speedups for build and probe operations. However, vectorization typically requires intrinsics – low-level APIs in which functions map to processorspecific SIMD instructions. Intrinsics are specific to a processor architecture and result in complex and difficult to maintain code. OpenCL is a parallel programming framework which provides a higher abstraction level than intrinsics and is portable to different processors. Thus, OpenCL avoids processor dependencies, which results in improved code maintainability. In this paper, we add efficient, vectorized hashing primitives to OpenCL. Our experimental study shows that OpenCL-based vectorization is competitive to intrinsics on CPUs and Xeon Phi coprocessors.
Rating: 2.0/5. From 1 vote.
Please wait...

* * *

* * *

* * *

HGPU group © 2010-2022 hgpu.org

All rights belong to the respective authors

Contact us: