Goals for this week (Lecture 5-6)
Share-memory programming with Pthreads.
Outline
- Profiling Tools
 
- Pthreads
- Background
 
- Pthreads Basics
- Our First Pthreads Program
 
- Fundamental Concepts and Common Functions
 
 
- Matrix-Vector Multiplication
 
 
- Critical Sections and Synchronization
- Critical Sections
 
- Busy-Waiting
 
- Mutex
 
- Semaphore
 
- Barrier 
and Condition Variables ← I don’t  know why this part is deleted 
 
- Thread Safety
 
Profiling Tools
Pthreads
Critical Sections and Synchronization
Thread Safety
Caveat: Incorrect programs can produce correct output!