YoVDO

Fast C++ Using SIMD Types with Generic Lambdas and Filters - Lecture

Offered By: CppCon via YouTube

Tags

C++ Courses Memory Management Courses SIMD Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore high-performance C++ programming techniques using SIMD types with generic lambdas and filters in this 54-minute conference talk from CppCon 2022. Learn how to generate efficient vectorized code by instantiating generic lambdas with SIMD wrapper types, achieving performance levels of 10-20 GFlops. Discover a small framework for memory management, alignment, and padding of vectors to support this programming style. Compare the performance of lambda-generated code with STL implementations for various functions, including memcopy, inner_product, and accumulate. Investigate branching challenges in vectorized code and explore solutions such as select operations and compound operations like transformSelect. Examine techniques for handling frequent branching and heavy computational loads, including filtering to value-based contiguous views and applying vectorized algorithms. Gain insights into optimizing performance across different compilers and hardware platforms, illustrated through a vectorized implementation of the inverse cumulative normal distribution function.

Syllabus

Fast C++ by using SIMD Types with Generic Lambdas and Filters - Andrew Drakeford - CppCon 2022


Taught by

CppCon

Related Courses

Stanford Seminar - MIPS Open, Wave Computing
Stanford University via YouTube
Loop Analysis and Vectorization in Julia - JuliaCon 2020
The Julia Programming Language via YouTube
Intrinsic Functions and Vector Processing Extensions for SIMD Parallel Operations in C++
javidx9 via YouTube
Intrinsics - Low-Level Engine Development with Burst - Unite Copenhagen
Unity via YouTube
Aggregating Ticks to Manage Scale in Sea of Thieves - Unreal Fest Europe 2019 - Unreal Engine
Unreal Engine via YouTube