Partition-based SIMD Processing and its Application to Columnar Database Systems

Research output: Contribution to journalResearch articleContributedpeer-review

Contributors

Abstract

The Single Instruction Multiple Data (SIMD) paradigm became a core principle for optimizing query processing in columnar database systems. Until now, only the LOAD/STORE instructions are considered to be efficient enough to achieve the expected speedups, while avoiding GATHER/SCATTER is considered almost imperative. However, the GATHER instruction offers a very flexible way to populate SIMD registers with data elements coming from non-consecutive memory locations. As we will discuss within this article, the GATHER instruction can achieve the same performance as the LOAD instruction, if applied properly. To enable the proper usage, we outline a novel access pattern allowing fine-grained, partition-based SIMD implementations. Then, we apply this partition-based SIMD processing to two representative examples from columnar database systems to experimentally demonstrate the applicability and efficiency of our new access pattern.

Details

Original languageEnglish
Pages (from-to)53-63
Number of pages11
JournalDatenbank-Spektrum
Volume23
Issue number1
Publication statusPublished - Mar 2023
Peer-reviewedYes

External IDs

RIS Hildebrandt2023
ORCID /0000-0001-8107-2775/work/176861686

Keywords

Research priority areas of TU Dresden