YoVDO

Parallel and Concurrent Programming with C++ Part 1

Offered By: LinkedIn Learning

Tags

C++ Courses Parallel Programming Courses Concurrent Programming Courses

Course Description

Overview

Learn the basics of concurrent and parallel programming in C++ to write more efficient, performant code.

Syllabus

Introduction
  • Learn parallel programming basics
  • What you should know
  • Installing Cygwin and Visual Studio Code
1. Parallel Computing Hardware
  • Sequential versus parallel computing
  • Parallel computing architectures
  • Shared versus distributed memory
2. Threads and Processes
  • Thread versus process
  • Thread versus process: C++ demo
  • Concurrent versus parallel execution
  • Execution scheduling
  • Execution scheduling: C++ demo
  • Thread life cycle
  • Thread life cycle: C++ demo
  • Detached thread
  • Detached thread: C++ demo
3. Mutual Exclusion
  • Data race
  • Data race: C++ demo
  • Mutual exclusion
  • Mutual exclusion: C++ demo
  • Atomic objects: C++ demo
4. Locks
  • Recursive mutex
  • Recursive mutex: C++ demo
  • Try lock
  • Try lock: C++ demo
  • Shared mutex
  • Shared mutex: C++ demo
5. Liveness
  • Deadlock
  • Deadlock: C++ demo
  • Abandoned lock
  • Abandoned lock: C++ demo
  • Starvation
  • Starvation: C++ demo
  • Livelock
  • Livelock: C++ demo
Conclusion
  • Next steps

Taught by

Olivia Chiu Stone and Barron Stone

Related Courses

Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld Systems
Vanderbilt University via Coursera
Paradigms of Computer Programming
Université catholique de Louvain via edX
Introduction to Operating Systems
Georgia Institute of Technology via Udacity
Programming Mobile Services for Android Handheld Systems: Content
Vanderbilt University via Coursera
Advanced Software Construction in Java
Massachusetts Institute of Technology via edX