Terminology distinguishing sequential from parallel computing

Heime via Gcc-help <[email protected]> Sun, 17 May 2026 21:15:19 +0000
Newsgroups gmane.comp.gcc.help
Message-ID <D9zpKmnrCDOzAOQHSACVq9yZ8sGx6sTbUU_6Opoz6D3TimDVte8pfpUAzN3v-NCH47fKDg9fjLybmtQZabuBiN3YpjYcght77172dRB5rL4=@protonmail.com>

I understand the use of parallel computing (e.g. using MPI)=20
in which computations are spread across different processors=20
working simultaneously. Although some also call this Distributed=20
Computing, I think that distributed computing also covers=20
serialised computations using multiple hardware enabled resources=20
such as scheduling multiple thread (which is commonly a sequential=20
process).

But then there is multithreading, which to me is still sequential=20
processing (except in case of simultaneous multithreading in hardware=20
that allows it). Yet, enabling multiple threads still made my fortran=20
program run faster! How does this happen when customarily multithreading=20
is still a mainly sequential process?

Then there is concurrent computing, which to me is basically still a=20
sequential process.

What is the appropriate wording for the two main ideas - is it

    Sequential - Multithreading, Concurrent
    Parallel - Multi-Processor Computing

Distributed Computing would then cover everything - the entire modern=20
landscape. Mainly because contemporary systems rely on shared hardware=20
resources rather than an isolated hardware unit performing program=20
execution.