Parallelism vs. Concurrency for Engineers

Correctly diagnose whether a system's bottleneck is I/O-bound or CPU-bound, and choose between concurrent structuring (async, goroutines, event loops) and parallel execution (multiprocessing, multi-core, GPU) accordingly.

4 sections ยท 8 lessons

Course outline

Definitions and the Core Distinction

  1. Concurrency is structure, parallelism is execution
  2. Why the two get conflated

When Concurrency Wins

  1. I/O-bound workloads and event loops
  2. Concurrency without multiple cores

When Parallelism Wins

  1. CPU-bound bulk computation
  2. The Python GIL: why threads aren't enough

Combining Both

  1. Go's model: concurrent design, parallel execution
  2. A decision framework

Start learning with Wondering