YoVDO

Python Parallel and Concurrent Programming Part 1

Offered By: LinkedIn Learning

Tags

Python Courses Parallel Programming Courses Concurrent Programming Courses

Course Description

Overview

Write more effective programs that execute multiple instructions simultaneously. Learn the fundamentals of parallel and concurrent programming in Python.

Syllabus

Introduction
  • Learn parallel programming basics
  • What you should know
  • Exercise files
1. Parallel Computing Hardware
  • Sequential vs. parallel computing
  • Parallel computing architectures
  • Shared vs. distributed memory
2. Threads and Processes
  • Thread vs. process
  • Concurrent vs. parallel execution
  • Global interpreter lock: Python demo
  • Multiple threads: Python demo
  • Multiple processes: Python demo
  • Execution scheduling
  • Execution scheduling: Python demo
  • Thread lifecycle
  • Thread lifecycle: Python demo
  • Daemon thread
  • Daemon thread: Python demo
3. Mutual Exclusion
  • Data race
  • Data race: Python demo
  • Mutual exclusion
  • Mutual exclusion: Python demo
4. Locks
  • Reentrant lock
  • Rlock: Python demo
  • Try lock
  • Non-blocking acquire: Python demo
  • Read-write lock
  • Read-write lock: Python demo
5. Liveness
  • Deadlock
  • Deadlock: Python demo
  • Abandoned lock
  • Abandoned lock: Python demo
  • Starvation
  • Starvation: Python demo
  • Livelock
  • Livelock: Python demo
Conclusion
  • Next steps

Taught by

Olivia Chiu Stone and Barron Stone

Related Courses

Artificial Intelligence for Robotics
Stanford University via Udacity
Intro to Computer Science
University of Virginia via Udacity
Design of Computer Programs
Stanford University via Udacity
Web Development
Udacity
Programming Languages
University of Virginia via Udacity