Next: Communication
Up: Shared Memory Programming
Previous: Shared Memory Programming
Contents
Task Creation
Figure 4.8:
Supervisor-workers model used in most parallel applications on shared memory systems.
|
- At the large-grained level, a shared memory system can provide traditional timesharing.
- Each time a new process is initiated, idle processors are supplied to run the new process.
- If the system is loaded, the processor with least amount of work
is assigned the new process.
- These large-grained processes are often called heavy weight tasks because of their high overhead.
- A heavy weight task in a multitasking system like UNIX consists of page tables, memory, and file description in addition to program code and data.
- These tasks are created in UNIX by invocation of fork, exec, and other related UNIX commands. This level is best suited for heterogeneous tasks.
- At the fine-grained level, lightweight processes makes parallelism within a single application practical, where it is best suited for homogeneous tasks.
- At this level, an application is a series of fork-join constructs. This pattern of task creation is called the supervisor-workers model, as shown in Fig. 4.8.
Next: Communication
Up: Shared Memory Programming
Previous: Shared Memory Programming
Contents
Cem Ozdogan
2006-12-27