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

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