Chapter 3The Finding Concurrency Design Space

3.1 ABOUT THE DESIGN SPACE

3.2 THE TASK DECOMPOSITION PATTERN

3.3 THE DATA DECOMPOSITION PATTERN

3.4 THE GROUP TASKS PATTERN

3.5 THE ORDER TASKS PATTERN

3.6 THE DATA SHARING PATTERN

3.7 THE DESIGN EVALUATION PATTERN

3.8 SUMMARY

3.1 About The Design Space

The software designer works in a number of domains. The design process starts in the problem domain with design elements directly relevant to the problem being solved (for example, fluid flows, decision trees, atoms, etc.). The ultimate aim of the design is software, so at some point, the design elements change into ones relevant to a program (for example, data structures and software modules). We call this the program domain. Although ...

Get Patterns for Parallel Programming now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.