CS267 / Eng233 / IDS267 Applications of Parallel Computers
Lecture 8: Wrap-up on Programming Models
Abstract
The first part of this lecture completes our walk-through of the
basic programming models on the fish-under-current problem. This
will highlight the philosophic differences in the various models,
as well as the detailed technical differences: expressing parallelism,
naming, synchronization.
We will then examine the basic strategies for performing work assignment.
This forms a kind of taxonomy:
Static
Regular
Irregular
Dynamic
Self-scheduling
Adpative
Task Queues
We will discuss the trade-offs inherent in the various strategies
and how they relate to the programming model.
Finally we willl take up two more specific topics: efficient locking
in shared-memory machines and minimizing overhead in data parallel
languages.