Parallel Programming with Multi-Core Processors
This course is being taught at UC Berkeley Extension
as X411.9
Syllabus
1. Introduction
(Lecture Notes pdf)
- Parallelism
- Parallel Architectures
- Parallel Programming
- An Example: Parallel Sum
- Another Example: Monte Carlo Pi Calculation
Assignment #1
2. Parallel Programming
Models and Languages (Lecture Notes pdf)
- Thread Level Programming
- Messaging Passing
- High-Level
Parallel Programming Language
Assignment #2
3. Performance
Metrics of Parallel Programs (Lecture Notes pdf)
- Performance Metrics for Parallel Programs
- Scalability of Parallel Programs
Assignment #3
4.
Parallel Algorithms
- Matrix Operations (Lecture Notes pdf)
- Bubble Sort and Parallel Bubble Sort (Sorting
Lecture Notes pdf)
- Naive Parallel Sort
- Parallel Merge
- Parallel Merge Sort
Assignment #4
5. Future Directions
(Lecture Notes pdf)
- Attached Special Purpose Processors
- Grid Computing
- Transactional Memory
Assignment #5 (Capstone Project)