Back to Browse

Making A Program Faster - Multithreading & Automatic Compiler Vectorization - Ivica Bogosavljevic

2.7K views
Oct 9, 2025
1:29:55

https://www.cppnow.org --- Making A Program Faster - On Multithreading & Automatic Compiler Vectorization - Ivica Bogosavljevic - C++Now 2025 --- The idea of this session is to teach you in 90 minutes how to make your program faster, through multithreading and compiler autovectorization. In the first part, we introduce the basics of multithreaded programming in C++ with OpenMP. OpenMP is a multithreaded programming standard that exists for many years and supported by all compilers - this is your opportunity to quickly learn its basics. But multithreading is not worth much if the program is not efficient to begin with. Therefore, we investigate the performance of single threaded programs with particular focus on compiler's autovectorization. In the second part, we explain what are vector instructions, and explain the process of autovectorization, when the compiler emits vector instructions to make your loop faster. The main focus of this part are vectorization inhibitors: parts of your C++ code that prevent automatic compiler vectorization. We give examples of unvectorized loops, we examine CLANG's vectorization report and we give solutions that will make codes several times faster with minimal modification. --- Slides: https://docs.google.com/presentation/d/12si2tCyTqWqHoPLLdDKbkLGOxFfcXhsgLG4wD6gLkWM/edit?usp=sharing think-cell develops one of the world’s leading PowerPoint applications, with C++ at the core of everything we build, from layout algorithms to deep integration with Microsoft Office. Interested in working on challenging C++ problems with real-world impact? Explore our open roles: https://www.think-cell.com/en/career/tech--- Ivica Bogosavljevic Ivica is a Senior Software Engineer with 15 years of experience active in the domain of Linux and bare-metal embedded systems. His professional focus is application performance improvement - techniques used to make your C/C++ program run faster by using better algorithms, better exploiting the underlying hardware, and better usage of the standard library, programming laddnguage, and the operating system. He is the writer for a performance-related tech blog: https://johnysswlab.com --- C++Now 2026 - 4th May - 8th May C++Now is an annual onsite international C++ programming and coding conference held in Aspen, Colarado. For all C++ developers, C++ software engineers and those involved with the C++ language, CppNow provides an indepth and technical content provided by the best and brightest C++ experts of the C++ world. Annual CppNow Conference - https://www.cppnow.org https://www.linkedin.com/company/cppnow https://twitter.com/cppnow https://www.facebook.com/CppNow https://www.reddit.com/r/CppNow https://mastodon.social/@cppnow Video Sponsors: think-cell and Bloomberg --- Videos Filmed & Edited By Bash Films: https://bashfilms.com/ YouTube Channel Managed & Optimized By Digital Medium Ltd: https://events.digital-medium.co.uk --- #peformance #multithreading #boost #cpp #cplusplus #programming #coding #softwareengineering #softwaredeveloper #code #cplusplusprogramming #cplusplustutorial #cplus #softwaredevelopment

Download

1 formats

Video Formats

360pmp4179.6 MB

Right-click 'Download' and select 'Save Link As' if the file opens in a new tab.

Making A Program Faster - Multithreading & Automatic Compiler Vectorization - Ivica Bogosavljevic | NatokHD