YoVDO

Parallel and Concurrent Programming with C++ Part 2

Offered By: LinkedIn Learning

Tags

C++ Courses Parallel Programming Courses Concurrent Programming Courses Futures Courses Thread Pool Courses

Course Description

Overview

Explore advanced techniques for parallel and concurrent programming with C++. Learn about condition variables, semaphores, barriers, thread pools, and more.

Syllabus

Introduction
  • Learn parallel programming basics
  • What you should know
  • Exercise files
1. Synchronization
  • Condition variable
  • Condition variable: C++ demo
  • Producer-consumer
  • Producer-consumer: C++ demo
  • Semaphore
  • Semaphore: C++ demo
2. Barriers
  • Race condition
  • Race condition: C++ demo
  • Barrier
  • Barrier: C++ demo
  • Latch: C++ demo
3. Asynchronous Tasks
  • Computational graph
  • Thread pool
  • Thread pool: C++ demo
  • Future
  • Future: C++ demo
  • Divide and conquer
  • Divide and conquer: C++ demo
4. Evaluating Parallel Performance
  • Speedup, latency, and throughput
  • Amdahl's law
  • Measure speedup
  • Measure speedup: C++ demo
5. Designing Parallel Programs
  • Partitioning
  • Communication
  • Agglomeration
  • Mapping
6. Challenge Problems
  • Welcome to the challenges!
  • Challenge: Matrix multiply
  • Solution: Matrix multiply
  • Challenge: Merge sort
  • Solution: Merge sort
  • Challenge: Download images
  • Solution: Download images
Conclusion
  • Next steps

Taught by

Olivia Chiu Stone and Barron Stone

Related Courses

Computer Architecture
Princeton University via Coursera
High Performance Scientific Computing
University of Washington via Coursera
Parallel Programming Concepts
openHPI
Введение в параллельное программирование с использованием OpenMP и MPI
Tomsk State University via Coursera
Parallel programming
École Polytechnique Fédérale de Lausanne via Coursera