A Simple Parallel Programming Model
A parallel computation is a set of tasks
Each task has local data, can be connected to other tasks by channels
A task can
- Compute using local data
- Send to/receive from other tasks
- Create new tasks, or terminate itself
A receiving task blocks until data available
Note ALL coordination is message passing