10 Questions
What is the primary purpose of dividing work among processes/threads in parallel programs?
So each process/thread gets roughly the same amount of work
What does SPMD stand for?
Single Program Multiple Data
What is the key aspect of writing parallel programs to minimize communication?
Dividing the work so each process/thread gets roughly the same amount
In shared memory programs, how are tasks carried out?
Start a single process and fork threads
How does a SPMD program behave as if it were multiple different programs?
Through the use of conditional branches
What is the first step in Foster’s methodology for parallel program design?
Partitioning
What is the main focus when identifying tasks in the partitioning step of Foster’s methodology?
Identifying tasks that can be executed in parallel
In Foster’s methodology, what is the purpose of agglomeration or aggregation?
Combine tasks and communications into larger tasks
What is the purpose of the communication step in Foster’s methodology?
Determine communication needs among identified tasks
What is the final step in Foster’s methodology for parallel program design?
Mapping
Test your knowledge of parallel software with this quiz. Explore concepts such as shared memory programs, distributed memory programs, processes, and threads.
Make Your Own Quizzes and Flashcards
Convert your notes into interactive study material.
Get started for free