Rethinking SIMD Vectorization for In-Memory Databases

Переосмысление SIMD-векторизации для баз данных в памяти
Orestis Polychroniou, Arun Raghavan, Kenneth A. Ross
2015-05-27

MIC architecture (Xeon Phi)SIMD vectorizationgather and scatter instructionsin-memory analytical databasesvectorized database operators
Analytical databases are continuously adapting to the underlying hardware in order to saturate all sources of parallelism. At the same time, hardware evolves in multiple directions to explore different trade-offs. The MIC architecture, one such example, strays from the mainstream CPU design by packing a larger number of simpler cores per chip, relying on SIMD instructions to fill the performance gap. Databases have been attempting to utilize the SIMD capabilities of CPUs. However, mainstream CPUs have only recently adopted wider SIMD registers and more advanced instructions, since they do not rely primarily on SIMD for efficiency. In this paper, we present novel vectorized designs and implementations of database operators, based on advanced SIMD operations, such as gathers and scatters. We study selections, hash tables, and partitioning; and combine them to build sorting and joins. Our evaluation on the MIC-based Xeon Phi co-processor as well as the latest mainstream CPUs shows that our vectorization designs are up to an order of magnitude faster than the state-of-the-art scalar and vector approaches. Also, we highlight the impact of efficient vectorization on the algorithmic design of in-memory database operators, as well as the architectural design and power efficiency of hardware, by making simple cores comparably fast to complex cores. This work is applicable to CPUs and co-processors with advanced SIMD capabilities, using either many simple cores or fewer complex cores.
1
Advanced SIMD capability allows many simple cores to be made comparably fast to fewer complex cores, making the approach applicable across CPUs and co-processors.
2
Combining these vectorized operators enables vectorized sorting and joins implementations.
3
Efficient SIMD vectorization changes algorithmic design of in-memory database operators and affects hardware architectural design and power efficiency.
4
Novel vectorized designs for database operators using advanced SIMD (gathers and scatters) are presented for selections, hash tables, and partitioning.
5
On MIC-based Xeon Phi and latest mainstream CPUs, the proposed vectorization designs are up to an order of magnitude faster than state-of-the-art scalar and existing vector approaches.

In-memory database operators (selections, hash tables, partitioning, sorting, and joins) implemented with SIMD vectorization

Design and performance (throughput, algorithmic implications, and power/architectural efficiency) of novel SIMD-based vectorized implementations using advanced operations (gather/scatter) across MIC-based Xeon Phi and mainstream CPUs

Publication Details
Publication Date
2015-05-27
Journal
Publisher
ISSN
Access Type
Author Information
Authors
Orestis Polychroniou
Arun Raghavan
Kenneth A. Ross
Explore further
Open the scid.ai AI chat with a ready-made request: it will find papers on a similar topic and help build a literature review.
Find similar papers in the chat
Make a presentation
100%