C++ programming language can be categorized under many topics. Some say its a general purpose programming language, some say its a object oriented version of C. But I liked to categorized it under system programming language. One characteristic of any system programming language including C++ is that language should be able to execute faster compare to other languages like java etc.
C++ paradigm took sharp turn with the introduction of C++11 standards. The most notable difference with previous version is the introduction of new memory model. Memory model is the key part of any language, and the performance of all the functionalities depends on that language memory model. With new c++ memory model, we can exploit tremendous power of modern multi core processors.
Programming a proper C++ code with better memory reclaim mechanism is tough task. But if we want to code thread safe code which can harvest underline processors true power is much more difficult task. In this course we will have in depth discussion on C++ concurrency features including memory model. We will implements thread safe data structures and algorithms, both lock based manner and lock free manner. Proper lock free implementations of data structures and algorithms will provide unprecedented performance output. Let me listed down key aspects we cover in this course below.
1.Basics of C++ concurrency(threads, mutex, package_task, future ,async, promise)
2.Lock based thread safe implementation of data structures and algorithms.
3.C++ memory model.
4.Lock free implementation of data structures and algorithms.
5.C++20 concurrency features.
5. Proper memory reclaim mechanism for lock free data structures.
6. Design aspects of concurrent code.
7. In depth discussion on thread pools.
8. Bonus section on CUDA programming with C and C++. Who this course is for:
Anyone who wants to widen you skills with c++ programming.
Requirements
Basic of c++ programming , some knowledge about data structures and algorithms would be helpful
Last Updated 3/2021
VISITOR COMMENTS (0 )
FILE LIST
Filename
Size
.pad/0
142 B
TutsNode.com.txt
63 B
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/1 - Setting up the environment for the course.mp4
106.1 MB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/1 - Setting up the environment for the course_en.srt
11 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/10 - How to pass parameters to a thread_en.srt
5.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/11 - Problematic situations may arise when passing parameters to a thread_en.srt
4.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/12 - Transferring ownership of a thread_en.srt
4.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/13 - Some useful operations on thread_en.srt
6.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/14 - Programming excersice 3 Sail a ship with work queues_en.srt
2.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/15 - Parallel accumulate - algorithm explanation_en.srt
4.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/16 - Parallel accumulate algorithm implementation_en.srt
10.7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/17 - Thread local storage_en.srt
4.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/18 - Debugging a application in Visual studio_en.srt
15.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/2 - Introduction to parallel computing_en.srt
13.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/3 - Quiz Parallel programming in general_en.srt
1.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/4 - How to launch a thread_en.srt
6.7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/5 - Programming exercise 1 Launching the threads_en.srt
1.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/6 - Joinability of threads_en.srt
5.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/7 - Join and detach functions_en.srt
5.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/8 - How to handle join, in exception scenarios_en.srt
7.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/9 - Programming exercise 2 Trivial sale a ship model_en.srt
2.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/1 - Thread management guide/external-assets-links.txt
365 B
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/2 - Concept of invarient_en.srt
4.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/3 - mutexes_en.srt
7.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/5 - Thread safe stack implementation introduction to stack_en.srt
6.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/6 - Thread safe stack implementation implementation_en.srt
8.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/7 - Thread safe stack implementation race condition inherit from the interface_en.srt
7.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/2 - Thread safe access to shared data and locking mechanisms/8 - Dead locks_en.srt
5.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/1 - introduction to condition variables_en.srt
6.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/10 - Retrieving exception using std futures_en.srt
3.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/11 - std shared_futures_en.srt
5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/2 - Details about condition variables_en.srt
5.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/3 - Thread safe queue implementation introduction to queue data structure_en.srt
6.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/4 - Thread safe queue implementation implementation_en.srt
6.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/5 - introduction to futures and async tasks_en.srt
5.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/6 - async tasks detailed discussion_en.srt
6.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/7 - Parallel accumulate algorithm implementation with async task_en.srt
5.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/8 - Introduction to package_task_en.srt
4.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/3 - Communication between thread using condition variables and futures/9 - Communication between threads using std promises_en.srt
3.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/1 - introduction to lock based thread safe data structures and algorithms_en.srt
5.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/10 - Partial sum algorithm parallel implementation_en.srt
7.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/10 - Partial sum algorithm parallel implementation_en.vtt
12.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/11 - Introduction to Matrix_en.srt
15.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/12 - Parallel Matrix multiplication_en.srt
5.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/13 - Parallel matrix transpose_en.srt
8.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/14 - Factors affecting the performance of concurrent code_en.srt
14.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/2 - queue data structure implementation using linked list data structure_en.srt
8.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/4 - Parallel STL introduction_en.srt
14 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/5 - parallel quick sort algorithm implementation_en.srt
16 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/6 - parallel for each implementation_en.srt
10.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/7 - parallel find algorithm implementation with package task_en.srt
8.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/7 - parallel find algorithm implementation with package task_en.vtt
7.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/8 - parallel find algorithm implementation with async_en.srt
4.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/4 - Lock based thread safe data structures and algorithm implementation/9 - Partial sum algorithm introduction_en.srt
9.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/1 - Jthread Introduction_en.srt
9.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/2 - Jthread Our own version implementation_en.srt
7.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/3 - C++ coroutines Introduction_en.srt
11.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/4 - C++ coroutines resume functions_en.srt
8.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/5 - C++ coroutines Generators_en.srt
7.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/6 - C++ Barriers_en.srt
7.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/5 - C++20 Concurrency features/external-assets-links.txt
84 B
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/1 - Introduction to atomic operations_en.srt
3.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/10 - Introduction to instruction reordering_en.srt
5.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/11 - Discussion on memory_order_relaxed_en.srt
5.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/12 - Discussion on memory_order_acquire and memory_order_release_en.srt
5.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/14 - Concept of transitive synchronization_en.srt
3.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/16 - Concept of release sequence_en.srt
7.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/17 - Implementation of spin lock mutex_en.srt
5.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/2 - Functionality of std atomic_flag_en.srt
4.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/3 - Functionality of std atomic_bool_en.srt
7.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/4 - Explanation of compare_exchange functions_en.srt
5.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/5 - atomic pointers_en.srt
8.3 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/6 - General discussion on atomic types_en.srt
2.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/7 - Important relationships related to atomic operations between threads_en.srt
4.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/6 - C++ memory model and atomic operations/9 - Discussion on memory_order_seq_cst_en.srt
6.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/2 - Stack recap_en.srt
9.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/3 - Simple lock free thread safe stack_en.srt
11.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/4 - Stack memory reclaim mechanism using thread counting.mp4
84.2 MB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/4 - Stack memory reclaim mechanism using thread counting_en.srt
19.7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/5 - Stack memory reclaim mechanism using hazard pointers_en.srt
17.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/7 - Lock free data structures and algorithms/6 - Stack memory reclaim mechanism using reference counting_en.srt
16.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/8 - Thread pools/1 - Simple thread pool_en.srt
11.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/8 - Thread pools/2 - Thread pool which allowed to wait on submitted tasks_en.srt
8.5 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/8 - Thread pools/3 - Thread pool with waiting tasks_en.srt
12.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/8 - Thread pools/4 - Minimizing contention on work queue_en.srt
7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/8 - Thread pools/5 - Thread pool with work stealing_en.srt
11.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/1 - Setting up the environment for CUDA_en.srt
6.7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/10 - Sum array example_en.srt
10.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/11 - Error handling in a CUDA program_en.srt
5.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/12 - CUDA device properties_en.srt
6.4 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/2 - Elements of CUDA program_en.srt
20 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/3 - Organization of threads in CUDA program 1_en.srt
9.6 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/4 - Organization of threads in CUDA program 2_en.srt
7 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/5 - Unique index calculation for threads in a grid_en.srt
10.9 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/6 - Unique index calculation for threads in a 2D grid_en.srt
7.2 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/7 - Unique index calculation for threads in a 2D grid 2_en.srt
5.8 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/8 - Timing a CUDA program_en.srt
9.1 KB
[TutsNode.com] - Modern C++ Concurrency in Depth ( C++1720)/9 - Bonus section Parallel programming in massively parallel devices with CUDA/9 - CUDA memory transfer_en.srt