Relational joins on GPUs

A closer look

Makoto Yabuta, Anh Nguyen, Shinpei Kato, Masato Edahiro, Hideyuki Kawashima

Research output: Contribution to journalArticle

2 Citations (Scopus)

Abstract

The problem of scaling out relational join performance for large data sets in the database management system (DBMS) has been studied for years. Although in-memory DBMS engines can reduce load times by storing data in the main memory, join queries still remain computationally expensive. Modern graphics processing units (GPUs) provide massively parallel computing and may enhance the performance of such join queries; however, it is not clear yet in what condition relational joins perform well on GPUs. In this paper, we identify the performance characteristics of GPU computing for relational joins by implementing several well-known GPU-based join algorithms under various configurations. Experimental results indicate that the speedup ratio of GPU-based relational joins to CPU-based counterparts depends on the number of compute cores, the size of data sets, join conditions, and join algorithms. In the best case, the speedup ratios are up to 6.67 times for non-index joins, 9.41 times for sort index joins, and 2.55 times for hash joins. The execution time of GPU-based implementation for index joins, on the other hand, is only about 0.696 times less than the execution time of the CPU's counterparts.

Original languageEnglish
Article number7869389
Pages (from-to)2663-2673
Number of pages11
JournalIEEE Transactions on Parallel and Distributed Systems
Volume28
Issue number9
DOIs
Publication statusPublished - 2017 Sep 1
Externally publishedYes

Fingerprint

Program processors
Data storage equipment
Parallel processing systems
Graphics processing unit
Engines

Keywords

  • Graphics processors
  • parallelism and concurrency
  • query processing

ASJC Scopus subject areas

  • Signal Processing
  • Hardware and Architecture
  • Computational Theory and Mathematics

Cite this

Relational joins on GPUs : A closer look. / Yabuta, Makoto; Nguyen, Anh; Kato, Shinpei; Edahiro, Masato; Kawashima, Hideyuki.

In: IEEE Transactions on Parallel and Distributed Systems, Vol. 28, No. 9, 7869389, 01.09.2017, p. 2663-2673.

Research output: Contribution to journalArticle

Yabuta, Makoto ; Nguyen, Anh ; Kato, Shinpei ; Edahiro, Masato ; Kawashima, Hideyuki. / Relational joins on GPUs : A closer look. In: IEEE Transactions on Parallel and Distributed Systems. 2017 ; Vol. 28, No. 9. pp. 2663-2673.
@article{4cae6669e3ef46e8ad6e511da5b9b8b6,
title = "Relational joins on GPUs: A closer look",
abstract = "The problem of scaling out relational join performance for large data sets in the database management system (DBMS) has been studied for years. Although in-memory DBMS engines can reduce load times by storing data in the main memory, join queries still remain computationally expensive. Modern graphics processing units (GPUs) provide massively parallel computing and may enhance the performance of such join queries; however, it is not clear yet in what condition relational joins perform well on GPUs. In this paper, we identify the performance characteristics of GPU computing for relational joins by implementing several well-known GPU-based join algorithms under various configurations. Experimental results indicate that the speedup ratio of GPU-based relational joins to CPU-based counterparts depends on the number of compute cores, the size of data sets, join conditions, and join algorithms. In the best case, the speedup ratios are up to 6.67 times for non-index joins, 9.41 times for sort index joins, and 2.55 times for hash joins. The execution time of GPU-based implementation for index joins, on the other hand, is only about 0.696 times less than the execution time of the CPU's counterparts.",
keywords = "Graphics processors, parallelism and concurrency, query processing",
author = "Makoto Yabuta and Anh Nguyen and Shinpei Kato and Masato Edahiro and Hideyuki Kawashima",
year = "2017",
month = "9",
day = "1",
doi = "10.1109/TPDS.2017.2677451",
language = "English",
volume = "28",
pages = "2663--2673",
journal = "IEEE Transactions on Parallel and Distributed Systems",
issn = "1045-9219",
publisher = "IEEE Computer Society",
number = "9",

}

TY - JOUR

T1 - Relational joins on GPUs

T2 - A closer look

AU - Yabuta, Makoto

AU - Nguyen, Anh

AU - Kato, Shinpei

AU - Edahiro, Masato

AU - Kawashima, Hideyuki

PY - 2017/9/1

Y1 - 2017/9/1

N2 - The problem of scaling out relational join performance for large data sets in the database management system (DBMS) has been studied for years. Although in-memory DBMS engines can reduce load times by storing data in the main memory, join queries still remain computationally expensive. Modern graphics processing units (GPUs) provide massively parallel computing and may enhance the performance of such join queries; however, it is not clear yet in what condition relational joins perform well on GPUs. In this paper, we identify the performance characteristics of GPU computing for relational joins by implementing several well-known GPU-based join algorithms under various configurations. Experimental results indicate that the speedup ratio of GPU-based relational joins to CPU-based counterparts depends on the number of compute cores, the size of data sets, join conditions, and join algorithms. In the best case, the speedup ratios are up to 6.67 times for non-index joins, 9.41 times for sort index joins, and 2.55 times for hash joins. The execution time of GPU-based implementation for index joins, on the other hand, is only about 0.696 times less than the execution time of the CPU's counterparts.

AB - The problem of scaling out relational join performance for large data sets in the database management system (DBMS) has been studied for years. Although in-memory DBMS engines can reduce load times by storing data in the main memory, join queries still remain computationally expensive. Modern graphics processing units (GPUs) provide massively parallel computing and may enhance the performance of such join queries; however, it is not clear yet in what condition relational joins perform well on GPUs. In this paper, we identify the performance characteristics of GPU computing for relational joins by implementing several well-known GPU-based join algorithms under various configurations. Experimental results indicate that the speedup ratio of GPU-based relational joins to CPU-based counterparts depends on the number of compute cores, the size of data sets, join conditions, and join algorithms. In the best case, the speedup ratios are up to 6.67 times for non-index joins, 9.41 times for sort index joins, and 2.55 times for hash joins. The execution time of GPU-based implementation for index joins, on the other hand, is only about 0.696 times less than the execution time of the CPU's counterparts.

KW - Graphics processors

KW - parallelism and concurrency

KW - query processing

UR - http://www.scopus.com/inward/record.url?scp=85029583105&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85029583105&partnerID=8YFLogxK

U2 - 10.1109/TPDS.2017.2677451

DO - 10.1109/TPDS.2017.2677451

M3 - Article

VL - 28

SP - 2663

EP - 2673

JO - IEEE Transactions on Parallel and Distributed Systems

JF - IEEE Transactions on Parallel and Distributed Systems

SN - 1045-9219

IS - 9

M1 - 7869389

ER -