3 ms·
"Understanding and expressing scalable concurrency" ( https://people.mpi-sws.org/~turon/turon-thesis.pdf https://people.mpi-sws.org/~turon/turon-thesis.pdf ) ad
by toolslive 10y ago
"Understanding and expressing scalable concurrency"
( https://people.mpi-sws.org/~turon/turon-thesis.pdf https://people.mpi-sws.org/~turon/turon-thesis.pdf )
addresses the difference between parallelism and concurrency in detail (page 11-12). Rereading that, I'm pretty sure the title is wrong.
- jondubois 10y agoI just read those few pages of the thesis. It seems to imply that concurrency has some sort of 'locking' or 'coordination' component. The 'Thinking in Parallel' article makes no mention of either of those concepts - Quite the opposite. In French, the word 'concurrent' literally means 'competitor' - Which in our case implies competition for computational resources (E.g. specific memory locations) - On the other hand, the 'Thinking in Parallel' article talks about how to partition resources in a way which removes the element of competition between processes - So the word 'Parallel' seems fitting.
- stonemetal 10y agoUnfortunately in the last few years concurrent and parallel have taken on technical meaning, so any understanding gained from what it means in the common tongue doesn't really help. Concurrent is for separate entities working together in a coordinated manner. A prime example is threads working together on a work queue. Parallel is for a singular entity doing multiple things at the same time. For example a vector instruction that does multiple additions at the same time.