Fluid Co-processing: GPU Bloom-filters for CPU Joins

被引:0
|
作者
Gubner, Tim [1 ]
Tome, Diego [1 ]
Lang, Harald [2 ]
Boncz, Peter [1 ]
机构
[1] CWI, Amsterdam, Netherlands
[2] TUM, Munich, Germany
关键词
CUCKOO;
D O I
10.1145/3329785.3329934
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
It has so far been unclear which data-intensive CPU tasks can be accelerated with GPUs, as GPUs are bottlenecked by the slow bus connection to the CPU and the limited size of GPU memories. In this paper we demonstrate a database workload where co-processing actually helps: accelerating large join pipelines where the join condition is selective, by pushing down a Bloom filter test for early pruning. GPUs are more powerful than CPUs for computing hash functions needed in Bloom filter tests, have a local memory with significantly more random-access bandwidth than the CPU, and since only keys (or extracts thereof) have to be moved to the GPU, data transfers over the bus are relatively small. Our microbenchmarks show that raw Bloom filter lookups are up to 6x faster on the GPU than on the CPU in case the Bloom filter is larger than the CPU cache. The next quest is for a database architecture that allows efficient CPU-GPU co-processing. We present a new heterogeneous query processing framework based on fluid co-processing. In fluid co-processing, tasks of different sizes - that fit the device - are dynamically co-processed. Early results show that fluid co-processing consistently improves end-to-end CPU performance of early pruning in join queries thanks to the GPU, by factors up to 2-3x.
引用
收藏
页数:10
相关论文
共 30 条
  • [1] Revisiting Co-Processing for Hash Joins on the Coupled CPU-GPU Architecture
    He, Jiong
    Lu, Mian
    He, Bingsheng
    [J]. PROCEEDINGS OF THE VLDB ENDOWMENT, 2013, 6 (10): : 889 - 900
  • [2] Evaluation of GPU/CPU Co-Processing Models for JPEG 2000 Packetization
    Bruns, Volker
    Martinez-del-Amor, Miguel A.
    Sparenberg, Heiko
    [J]. 2017 IEEE 19TH INTERNATIONAL WORKSHOP ON MULTIMEDIA SIGNAL PROCESSING (MMSP), 2017,
  • [3] In-Cache Query Co-Processing on Coupled CPU-GPU Architectures
    He, Jiong
    Zhang, Shuhao
    He, Bingsheng
    [J]. PROCEEDINGS OF THE VLDB ENDOWMENT, 2014, 8 (04): : 329 - 340
  • [4] Hybrid computing: CPU+GPU co-processing and its application to tomographic reconstruction
    Agulleiro, J. I.
    Vazquez, F.
    Garzon, E. M.
    Fernandez, J. J.
    [J]. ULTRAMICROSCOPY, 2012, 115 : 109 - 114
  • [5] A Method of Rapid Distortion Correction for UAV Image Based on GPU-CPU Co-Processing Technology
    Li Penglong
    Ding Yi
    Duan Songjiang
    Luo Ding
    Jiang Ziwei
    Xiao Yong
    [J]. IGARSS 2018 - 2018 IEEE INTERNATIONAL GEOSCIENCE AND REMOTE SENSING SYMPOSIUM, 2018, : 5720 - 5723
  • [6] Demo: Accelerating Depth-Map on Mobile Device Using CPU-GPU Co-processing
    Fasogbon, Peter
    Aksu, Emre
    Heikkila, Lasse
    [J]. COMPUTER ANALYSIS OF IMAGES AND PATTERNS, CAIP 2019, PT I, 2019, 11678 : 75 - 86
  • [7] Accelerating a computer vision algorithm on a mobile SoC using CPU-GPU co-processing - A case study on face detection
    Lee, Youngwan
    Jang, Cheolyong
    Kim, Hakil
    [J]. 2016 IEEE/ACM INTERNATIONAL CONFERENCE ON MOBILE SOFTWARE ENGINEERING AND SYSTEMS (MOBILESOFT 2016), 2016, : 70 - 76
  • [8] Event- and Time-Driven Techniques Using Parallel CPU-GPU Co-processing for Spiking Neural Networks
    Naveros, Francisco
    Garrido, Jesus A.
    Carrillo, Richard R.
    Ros, Eduardo
    Luque, Niceto R.
    [J]. FRONTIERS IN NEUROINFORMATICS, 2017, 11
  • [9] Hierarchical parallel processing of large scale data clustering on a PC cluster with GPU co-processing
    Takizawa, Hiroyuki
    Kobayashi, Hiroaki
    [J]. JOURNAL OF SUPERCOMPUTING, 2006, 36 (03): : 219 - 234
  • [10] Hierarchical parallel processing of large scale data clustering on a PC cluster with GPU co-processing
    Hiroyuki Takizawa
    Hiroaki Kobayashi
    [J]. The Journal of Supercomputing, 2006, 36 : 219 - 234