• DocumentCode
    3181834
  • Title

    Improving Data Partitioning Performance on OpenCL-Based FPGAs

  • Author

    Zeke Wang ; Bingsheng He ; Wei Zhang

  • Author_Institution
    Nanyang Technol. Univ., Singapore, Singapore
  • fYear
    2015
  • fDate
    2-6 May 2015
  • Firstpage
    34
  • Lastpage
    34
  • Abstract
    We investigate the performance of relational database applications on recent OpenCL-based FPGAs. As a start, we study the performance of data partitioning, a core operation widely used in relational databases. Due to the random memory accesses, data partitioning is time-consuming and can become a major bottleneck for database operators such as hash joins. We start with the state-of-the-art OpenCL implementation which was originally designed for the CPU/GPU, and find that such an implementation suffers from lock overhead and memory stalls. To resolve those overheads, we develop a simple yet efficient multi-kernel approach to leverage two emerging features in Alter a OpenCL SDK, namely task kernel and channel. We evaluate the proposed design on a recent Alter a Stratix V GX FPGA. Our results demonstrate that our proposed approach can achieve roughly 10.7X speedup over the state-of-the-art OpenCL implementation.
  • Keywords
    field programmable gate arrays; relational databases; CPU-GPU; OpenCL SDK; OpenCL-based FPGAs; Stratix V GX FPGA; data partitioning performance; lock overhead; memory stalls; multikernel approach; random memory accesses; relational database; task kernel; Acceleration; Field programmable gate arrays; Hardware design languages; Kernel; Relational databases; Throughput; Database; FPGA; OpenCL; Partitioning;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Field-Programmable Custom Computing Machines (FCCM), 2015 IEEE 23rd Annual International Symposium on
  • Conference_Location
    Vancouver, BC
  • Type

    conf

  • DOI
    10.1109/FCCM.2015.34
  • Filename
    7160035