Problem Decomposition
Two kinds of decompositions:
- Domain decomposition
- data divided into pieces of same size and mapped to different
processors
- processor works only on data assigned to it
- communicates with other processors when necessary
- examples of domain (data) decomposition
- embarrassingly parallel applications (Monte Carlo
simulations)
- finte difference calculations
- numerical integration
- Functional decomposition
- used when pieces of data require different processing times
- performance limited by the slowest process
- program decomposed into a number of small tasks
- tasks assigned to processors as they become available
- implemented in a master/slave paradigm
- examples of functional decomposition
- surface reconstruction from a finite element mesh
- searching images or data bases