Lect06 - Dynamic Processes: Spawn Dynamic Processes Adding...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon
Dynamic Processes: Spawn
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Dynamic Processes • Adding processes to a running job – As part of the algorithm i.e. branch and bound – When additional resources become available – Some master-slave codes where the master is started first and asks the environment how many processes it can create • Joining separately started applications – Client-server or peer-to-peer • Handling faults/failures
Background image of page 2
MPI-1 Processes • All process groups are derived from the membership of the MPI_COMM_WORLD – No external processes • Process membership static (vs. PVM) – Simplified consistency reasoning – Fast communication (fixed addressing) even across complex topologies – Interfaces well to many parallel run-time systems
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Static MPI-1 Job • MPI_COMM_WORL D • Contains 16 processes MPI_COMM_WORLD
Background image of page 4
Static MPI-1 Job • MPI_COMM_WORL D • Contains 16 processes • Can only subset the original MPI_COMM_WORL D – No external processes MPI_COMM_WORLD Derived comm
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Disadvantages of Static Model • Cannot add processes • Cannot remove processes – If a process fails or otherwise disappears, all communicators it belongs to become invalid Fault tolerance undefined
Background image of page 6
MPI-2 • Added support for dynamic processes – Creation of new processes on the fly – Connecting previously existing processes • Does not standardize inter- implementation communication – Interoperable MPI (IMPI) created for this
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Open Questions How do you add more processes to an already- running MPI-1 job? • How would you handle a process failure? • How could you establish MPI communication between two independently initiated, simultaneously running MPI jobs?
Background image of page 8
MPI-2 Process Management MPI-2 provides “spawn” functionality – Launches a child MPI job from a parent MPI job Some MPI implementations support this – Open MPI – LAM/MPI – NEC MPI – Sun MPI High complexity: how to start the new MPI applications ?
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 10
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 47

Lect06 - Dynamic Processes: Spawn Dynamic Processes Adding...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online