Designing Parallel Algorithms
-
Elements of parallel algorithm design
- Discover which pieces of work that can be done concurrently
(tasks)
- Mapping of the tasks onto multiple processors
- Decide on how to distribute the input, output and intermediate result
across the different processors
- Management the access of shared data
- Synchronize the processors at the critical points
of the parallel execution
-
Holy Grail of parallel algorithm design