SIMD and Vectorization: Parallelism in C++ #1/3 (multitasking on single core)

Bisqwit · 103K views · 2017 · 12:51

Open on YouTube

Software performance & optimizationC, C++, Rust, Go & systems languagestutorial

Why Stack Overflow recommends it

Stack Overflow users link it when answering questions about parallelizing C++ code, SIMD, and speeding up fractal rendering, treating it as an approachable practical guide.

Recommended by 1 people across 1 different months, 2018 to 2018.

What it is

The first part of a three-part tutorial by Bisqwit on parallelism in C++ with GCC, focused on SIMD (single instruction, multiple data) and vectorization approaches. A Mandelbrot fractal renderer serves as the running example, and the presentation is a tool-assisted, narrated programming walkthrough.

What people said

Strong rec Fureeish · 2018-11 · Stack Overflow · on “How to harness power of multiple processors with c++ and boost”

Bisqwit did an amazing series on parallelisation in C++ [this video] . If I remember correctly, he introduced both multithreading and multiprocessing, but I am not sure (can't watch it right now) It's definitely worth checking though.

Cites Tom Wenseleers · 2018-01 · Stack Overflow · on “Multithreaded & SIMD vectorized Mandelbrot in R using Rcpp & OpenMP”

Thanks millions for the detailed tutorial - very instructive and elegant! I also just found [LINK] [this video] [LINK] [LINK] which still has some optimizations on the algorithmic side, but much less elegant code-wise I think...

Cites Rohit Sarkar · 2018-09 · Stack Overflow · on “Parallel and Single Threaded code having relatively same performance in Java”

@edharned Thanks for the pointers. I will look it up. The reason I was doing this was I had seen a C++ video ( [this video] ) related to the same topic of generating fractals where he optimized his code quite a lot by parallelizing it. I was hoping to achieve the same with Java. Hopefully I will be able to do it.