Shared Memory Parallel Computing
This IPDC course is an introduction to parallel and distributed programming, including both the concepts and their application. Course content will include discussions of different types of parallel machines and machine models, the design and analysis of parallel algorithms, and the development of parallel programs.
This page provides information about the second half of the course: Shared Memory Parallel Computing.
The purpose of this part of the course is to give you a practical introduction to parallel programming on a shared memory computer.
At the completion of this part of the course, you will be able to:
- Demonstrate knowledge about the concepts and essential syntax of OpenMP.
- Parallelize an existing serial code, and write a parallel code from scratch, using OpenMP and Java threads.
- Measure the performance of OpenMP and Java thread codes.
Barbara Chapman, Gabriele Jost, and Ruud van der Pas:
Using OpenMP - Portable Shared Memory Parallel Programming.
The MIT Press, 2007.
Keld Helsgaun, associate professor
- OpenMP Web Site
- OpenMP 3.0 Specification
- Summary of OpenMP 3.0 C/C++ Syntax
- Intel Parallel Programming Videos
- Learning C from Java
- A Concise Introduction to C
- Concurrency. The Java Tutorial
- Task Execution (using the Java Executor framework)
- UNIX Tutorial for Beginners
- Debugging with GDB
- 32 OpenMP Traps For C++ Developers
- Introduction to Parallel Computing (tutorial)
- How to Survive the Multicore Software Revolution