Pietrzyk, JohannesUngethüm, AnnettHabich, DirkLehner, WolfgangGrust, TorstenNaumann, FelixBöhm, AlexanderLehner, WolfgangHärder, TheoRahm, ErhardHeuer, AndreasKlettke, MeikeMeyer, Holger2019-04-112019-04-112019978-3-88579-683-1https://dl.gi.de/handle/20.500.12116/21726Hash tables are a core data structure in database systems, because they are fundamental for many database operators like hash-based join and aggregation. In recent years, the efficient vectorized implementation using SIMD (Single Instruction Multiple Data) instructions has attracted a lot of attention. Generally, all hash table implementations need to address what happens when collisions occur. In order to do that, the collisions have to be detected first. There are two types of collisions: (i) key duplicates and (ii) hash value duplicates. The second type is more complicated than the first type. In this paper, we investigate linear probing as a heavily applied hash table implementation and we present an extension of the state-of-the-art vectorized implementation with a hardware-supported duplicate or collision detection. For that, we use novel SIMD instructions which have been introduced with Intel’s SIMD instruction set extension AVX-512. As we are going to show, our approach outperforms the state-of-the-art vectorized version for the key handling, but introduces novel challenges for the value handling. We conclude the paper with some ideas how to tackle that challenge.enHashingLinear ProbingVectorizationConflict DetectionFighting the Duplicates in Hashing: Conflict Detection-aware Vectorization of Linear Probing10.18420/btw2019-041617-5468