Serial vs parallel, in one sentence
Serial execution runs one instruction stream end-to-end on one core: step A finishes, then step B starts. Parallel execution splits the work across many workers that run at the same time.
Two flavours that get confused:
- Concurrency: structuring a program as independent tasks that could run in parallel (e.g. async I/O on one thread).
- Parallelism: actually executing them simultaneously on multiple physical cores.
A modern laptop CPU runs ~8-16 threads in parallel. A consumer GPU runs tens of thousands. The interesting question isn't "can I parallelise this?" — it's "will the parallel version actually be faster after data movement and synchronisation?"
