Vectorized Query Execution with SIMD - Lecture 8
Offered By: CMU Database Group via YouTube
Course Description
Overview
Explore a comprehensive lecture on vectorized query execution using SIMD in advanced database systems. Delve into the fundamentals of vectorization, its importance, and the concept of Single Instruction Multiple Data (SIMD). Examine various types of vectorization, SIMD instructions, and their historical development. Analyze implementation strategies, including automatic and explicit vectorization, memory alignment, and specialized instructions. Investigate vectorized algorithms, performance considerations, and the materialization model. Learn about stage buffers, prefetching, and hash tables in the context of vectorized query execution.
Syllabus
Intro
Agenda
What is Vectorization
Why Vectorization Matters
Single Instruction Multiple Data
SIMD Example
Types of Vectorization
Types of Instructions
Streaming Instructions
Handling Exceptions
SIMD History
Tradeoffs
AVX 512
Wikipedia
Skylake 2017
Implementation
Automatic Vectorization
Automatic Vectorization Example
Driver Hints
C Restrictions
Explicit Vectorization
Memory Alignment
Permute
Out of Memory
Selective Store
Compress
Additional Values Span
Gather and Gather
Scatter
Vectorized Algorithms
MD Compare
Output Vector
Performance
Xeon Phi
Branchless
Vectorized
Memory Bandwidth
Invalid Tuples
Example
Materialization Model
Stage Buffer
Simple Pseudo Code
Prefetching
Results
Graph
Hash Tables
Taught by
CMU Database Group
Related Courses
Getting Started with Reverse EngineeringPluralsight Intro to Binary Exploitation
HTB Academy via Independent Energy Efficient Programming
openHPI Journey to the Centre of the JVM - Exploring CPU Architecture and Memory Models
ChariotSolutions via YouTube One Glitch to Rule Them All - Fault Injection Attacks Against the AMD Secure Processor
Black Hat via YouTube