CppCon 2017: Hartmut Kaiser “The Asynchronous C++ Parallel Programming Model”
In this talk we present a new asynchronous C parallel programming model which is built around lightweight tasks and mechanisms to orchestrate massively parallel (and distributed) execution. This model uses the concept of (std) futures to make data dependencies explicit, employs explicit and implicit asynchrony to hide latencies and to improve utilization, and manages finer-grain parallelism with a work-stealing scheduling system enabling automatic load-balancing of tasks. As a result of combining those capabilities the programming model exposes auto-parallelization capabilities as emergent properties.
We have implemented the this model as a C library exposing a higher-level parallelism API which is fully conforming to the existing C 11/14/17 standards and is aligned with the ongoing standardization work. This API and programming model has shown to enable writing parallel and distributed applications for heterogeneous resources with excellent performance and scaling characteristics.
13 views
11
4
1 year ago 01:29:16 1
Delivering Safe C++ - Bjarne Stroustrup - CppCon 2023
2 years ago 00:59:34 1
CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
3 years ago 01:47:45 1
CppCon 2017: Herb Sutter “Meta: Thoughts on generative C++”
3 years ago 01:03:40 1
CppCon 2017: Bob Steagall “How to Write a Custom Allocator”
3 years ago 01:00:07 1
CppCon 2017: Carl Cook “When a Microsecond Is an Eternity: High Performance Trading Systems in C++”
4 years ago 01:02:28 1
CppCon 2017: James McNellis “Everything You Ever Wanted to Know about DLLs”
4 years ago 01:14:22 5
CppCon 2017: Fedor Pikus “C++ atomics, from basic to advanced. What do they really do?”
4 years ago 00:54:33 1
CppCon 2017: Nicolas Guillemot “Design Patterns for Low-Level Real-Time Rendering”
6 years ago 00:52:01 1
CppCon 2017: Louis Brandy “Curiously Recurring C++ Bugs at Facebook”
6 years ago 00:03:13 5
CppCon 2017: Dietmar Kühl “The End of std::endl”
6 years ago 01:06:46 13
CppCon 2017: Hartmut Kaiser “The Asynchronous C++ Parallel Programming Model”
6 years ago 01:31:14 1
CppCon 2017: Titus Winters “C++ as a “Live at Head“ Language”
6 years ago 01:38:41 1
CppCon 2017: Bjarne Stroustrup “Learning and Teaching Modern C++”
6 years ago 01:00:49 1
CppCon 2017: Jason Turner “Practical C++17”
7 years ago 00:58:49 1
CppCon 2017: Arthur O’Dwyer “dynamic_cast From Scratch”
7 years ago 00:46:58 1
CppCon 2017: Nicholas Ormrod “Fantastic Algorithms and Where To Find Them”
7 years ago 00:05:09 1
CppCon 2017: Victor Komarov “Universal Memoization Decorator”
7 years ago 00:35:03 1
CppCon 2017: Nir Friedman “What C++ developers should know about globals (and the linker)”
7 years ago 01:00:45 21
CppCon 2017: Andrew Sutton “Meta”
7 years ago 01:10:15 16
CppCon 2017: “C++17 ParallelSTL: A Standardization Experience Report for CPU and GPU on SYCL”
7 years ago 01:08:04 19
CppCon 2017: Louis Dionne “Runtime Polymorphism: Back to the Basics”
7 years ago 00:54:26 15
CppCon 2017: Bryce Adelstein Lelbach “C++17 Features (part 2 of 2)”
7 years ago 00:49:00 150
CppCon 2017: Bryce Adelstein Lelbach “C++17 Features (part 1 of 2)”
7 years ago 00:04:49 23
CppCon 2017: Nicolas Fleury “Introduction to Sharpmake”