Parallelism Primer
About this Workshop
This is a 'gentle introduction' to parallel programming ideas and methods. We don't assume any particular programming knowledge; however you will need a few months experience to want to get hands on as parallel programming has a lot of wrinkles.
Slides
- Introduction and AnalogiesLink opens in a new window
- Threads and OpenMPLink opens in a new window
- MPILink opens in a new window
- GPUsLink opens in a new window
- Short ConclusionsLink opens in a new window
The introductory material is also available as notes hereLink opens in a new window.
A more detailed discussion of the technologies is hereLink opens in a new window.
Hands-On Material
Since this course does not specify a programming language, this section contains some hands-on examples using either 'pen and paper'. For programming exercises, we recommend looking at materials for the relevant technology. Those we provide are linked in the next section.
- Parallelism gameLink opens in a new window
- Workflows with GNU ParallelLink opens in a new window
- Parallelism approaches exercisesLink opens in a new window
Other Warwick materials
- https://warwick.ac.uk/research/rtp/sc/rse/training/intrompi - Introduction to MPI
- https://warwick.ac.uk/research/rtp/sc/rse/training/openmp - Introduction to OpenMP
Documentation Link
SCRTP documentation is available at https://docs.scrtp.warwick.ac.uk/
Example Code
Github repo of examplesLink opens in a new window