Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

19.535 Lượt nghe
Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022
Slides: https://github.com/boostcon CppNow Website: https://www.cppnow.org​ CppNow Twitter: @CppNow​ --- Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022 This talk is an overview of the C++ facilities for concurrent programming across different standard versions, from C++11 to C++20. C++11 was the first concurrency-aware C++ standard, and we will see what we got, what works, what sort of works, and what should be flat out avoided. The focus of the talk is on using C++ concurrency for maximum performance, and the presentation is illustrated by live benchmarks. We will learn about the memory model in C++ and why it matters, then study thread-safety guarantees provided by the language and the standard libraries and how to provide similar guarantees in your own code. Next, we will review the basic primitives of concurrency in C++: locks, barriers, conditions, atomics, and facilities for lock-free programming, as well as how (and what for) to use them in your concurrent programs. We will explore parallel algorithms and benchmark their performance, then see what the C++20 coroutines are all about. We will conclude with a brief review of the concurrency features that may be coming our way in C++23. Fedor Pikus Fedor G Pikus is a Technical Fellow and head of the Advanced Projects Team in the Siemens Digital Industries Software. His earlier positions included a Senior Software Engineer at Google and a Chief Scientist at Mentor Graphics (acquired by Siemens Software). He joined Mentor Graphics in 1998 when he made a switch from academic research in computational physics to the software industry. His responsibilities as a Technical Fellow include planning the long-term technical direction of Calibre products, directing and training the engineers who work on these products, design, and architecture of the software, and research in new design and software technologies. Fedor has over 25 patents and over 100 papers and conference presentations on physics, EDA, software design, and C++ language. --- Videos Filmed & Edited By Bash Films https://bashfilms.com/ YouTube Channel Managed By Digital Medium Ltd: https://events.digital-medium.co.uk #Boost​ #Cpp​ #CppNow​