Concurrent Programming vs Parallel Programming

In concurrent computation two computations both advance independently of each other. The second computation doesn’t have to wait until the first is finished for it to advance. It doesn’t state however, the mechanism how this is achieved. In single-core setup, suspending and alternating between threads is required (also called pre-emptive multithreading).

In parallel computation two computations both advance simultaneously - that is literally at the same time. This is not possible with single CPU and requires multi-core setup instead.

Un exemplu bun este inmultirea matricilor care se poate rezolva cu ambele variante:


always good to link the source

also relevant:

2 Likes