Task parallelism and manager-worker parallelism Flashcards

(9 cards)

1
Q

How is manager-worker parallelism implemented?

A

Additional MPI features are used. These features are wildcards and Groups and Communicators.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is an MPI Wildcard?

A

Allows a message to be received from an unspecified source. Used so the manager can receive a message from all workers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How are results from workers collected?

A

Rather than using MPI_COMM_WORLD a new communicator is defined which only includes the worker processes. This new communicator can be used in MPI function calls.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How doe processors in the manager-worker parallelism interact?

A

One MPI process is a “manager” and hands out work to worker processes. All other processes are workers which request work from the manager process. Workers request more work when they have finished their current task.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Why does manager-worker scale better than domain decomposition?

A

manager-worker can load-balance at run time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the three OpenMP work sharing constructs?

A
  1. parallel for
  2. sections
  3. single
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

When is the section construct used?

A

When there are two or more sections of code which can be executed concurrently

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

When is the single construct used?

A

Usually, work that is not parallelised will be repeated by all threads. Single ensures that only one thread executes a block of code inside a parallel region.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do threads interact when running OpenMP tasks?

A

One thread generates tasks, and other threads execute the tasks. After the generating threads has finished generating the tasks, it may carry out some of the tasks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly