Chapter 13. Blackboard Architectures Using PVM, Threads, and C++ Components
In this Chapter
One of the primary goals in parallel programming is to divide the work a program must do into a set of tasks that may be executed with as much concurrency as necessary. This goal is an elusive one. Finding the correct WBS (Work Breakdown Structure) that will support parallelism and produce correct and efficient results can be a challenge. We use a modeling and architectural approach to achieve an acceptable WBS. In practice the process of modeling the problem and solution as naturally as possible with either objects or processes reveals any necessary parallelism. The model also identifies where the parallelism occurs within the problem or the solution. It's not necessary to introduce parallelism into a solution. If the problem and solution are appropriately modeled , then any necessary parallelism will be discovered . The blackboard architecture helps with this modeling process. In particular, the blackboard model helps to organize and conceptualize the concurrency and the communication within a system that requires parallelism or distributed programming. |