Basic Concepts in Parallel Programming

In this section, we will briefly look at parallel programming paradigms and the two popular types of architectures used by parallel computers.



Parallel Programming Paradigms

There are different parallel programming paradigms (the names are self-explanatory):

We will use a mixed parallel programming paradigm -- a combination of data parallel and message passing paradigms. We'll refer to it as "Single Program Multiple Data" or SPMD model in this tutorial. The reason it is called so:

If you are interested in learning more about the paradigms mentioned above, Gustav Meglicki has some excellent notes explaining parallel programming paradigms in the I590 section of his website.



Hardware Architectures used by Parallel Computers

Distributed memory systems

Shared memory systems



Once again...

Check out "Low-down on AVIDD - Technical Details" subsection in the Primer to working on the AVIDD Linux Cluster guide, if you have not done so yet.



Previous:  Makefile ... Up: Table of Contents Next:  RoundRobin - Message Passing Illustrated