SIMD-Programmierung: Eine Einführung

Speakers:

Robert Clausecker (Informatiker) / Homepage

Scheduled time: Sunday, 16:00 - Room V3 - Duration 60 Min.

Die meisten heutzutage verwendeten Prozessoren unterstützen SIMD-Befehle. SIMD, das steht für »Single Instruction Multiple Data« und bedeutet, dass die Prozessoren statt mit einzelnen Zahlen auch mit (kurzen) Vektoren von Zahlen arbeiten können.

In diesem Vortrag werde ich euch alles über SIMD erzählen. Was das eigentlich genau ist, was für Performanz-Vorteile man sich davon für welche Anwendungen erhoffen kann, und wie man als Programmierer am einfachsten SIMD in seinen Anwendungen verwenden kann.

Im Fokus stehen dabei die am weitesten verbreiteten Architekturen x86-64 und AArch64 und die dazugehörigen SIMD-Erweiterungen SSE, AVX, und AVX-512 (für x86-64) sowie NEON und SVE (für AArch64).

Desired previous knowledge: Kenntnisse der Programmierung in C, C++, oder Assembler sind sinnvoll. Dieser Vortrag richtet sich an erfahrene Programmierer, die die Performanz ihrer eigentlich schon gut optimierten Programme nochmal verbessern wollen.

Supplemental material: Slides (108 KiB)

Video recording (external):

https://media.ccc.de/v/clt25-215-simd-programmierung-eine-einfuhrung