Parallel Computing (a brief overview)
Here are some common concepts in parallel computing which will be beneficial for educators interested in teaching the subject to know.
- multi-core, many-core processors
- A processor system containing multiple cores per chip. A many-core processor is one in which the number of cores is large enough that traditional multi-processor techniques are no longer efficient.
- parallelism vs. concurrency
- Parallelism involves multiple computer actions physically taking place at the same time. Concurrency, by contrast, involves programming in order to take advantage of parallelism. Thus, parallelism takes place in hardware, whereas concurrency takes place in software.
- concurrent programming
- Programming for multiple cores or multiple computers
- Multiple networked computers managed as a single resource and designed for working together on large computational problems. An example of distributed computing
- data parallelism
- A form of parallel computing in which the same processing is applied to multiple subsets of a large data set in parallel
- task parallelism
- A form of parallel computing in which different stages of a computation are performed in parallel