Parallel Programming

Prof. Christoph von Praun - Winter 2011/2012


Fachwissenschaftliches Wahlpflichtfach

Date and Place

Monday 8:00-11:15 Room Q305

News Feed

The oral exams will be on February 10, 2012.



Outline

Topic Lecture Materials Assignments

1 Introduction [pdf] Amdahl's Law and Prime Number Testing [pdf]
[PrimePrinter-X10] [PrimePrinter-Java] [PrimePrinter-Java-Executor] [PrimePrinter-Scala]
2 Simple Model for Parallel Programs and Program Executions [pdf] Numerical Integration [pdf]
Concurrent Objects, Linearizability, Race Conditions [pdf]

3 Tiers of Parallelism [pdf]
4 Automatic and Implicit Parallelization [pdf]
5 Deterministic Parallelism [pdf]
6 Patterns for Parallel Programming [pdf]
7 Data Parallelism [pdf] Geometric Decomposition [pdf]
HeatTransfer Fragment [HeatTransfer_fragment.zip] HeatTransfer Solution [HeatTransfer.zip] Recursive Data [pdf] ParallelSum Solution [ParallelSum.zip]

8 Task Parallelism [pdf]
MapReduce [pdf]
X10 API Documentation [html]
MapReduce fragment [MapReduceFragment.zip] WordCount fragment [WordCount.x10] MapReduce solution [MapReduce.zip]
MergeSort [pdf] MergeSort solution [MergeSort.zip]
Traveling Salesman [pdf] Utility Sources [BitSet.x10, BankersSequence.x10] Traveling Salesman solution [Tsp.zip]
9 Pipeline Parallism [pdf]
10 Explicitly Synchronized Programs (Tier 3) [pdf]
11 Low-Level Parallelism with Race Conditions [pdf]
12 Shared Memory Models [pdf]
13 Roundup - Topics not addressed [pdf]




Follow these guidelines to install the X10 Development Toolkit as plugin of your eclipse platform.

You can import the solutions of the programming assignments into your eclipse workspace as follows:
(1) Start eclipse, (2) Menu File-Import, (3) Select General-Existing Project into Workspace, (4) Specify archive file, (5) Finish.


X10 Resources

Examples and programming exercises in this course will be based on the programming language X10.

Literature

Introduction, the Era of Multicore Programming

Models for Parallel Computation

Scalability and Performance Analysis

Higher-Level Parallel Programming Models

Recommended Books

Grading

30% class participation and projects, 70% oral exam.


Last change: 18-Jan-2012.